Compare commits
5 Commits
9cf7859594
...
73d3c6ca6e
| Author | SHA1 | Date | |
|---|---|---|---|
| 73d3c6ca6e | |||
| 0867b9f747 | |||
| f86626e623 | |||
| 5a93a7b4c6 | |||
| b39b2b355b |
7
.gitignore
vendored
7
.gitignore
vendored
@ -1,2 +1,9 @@
|
|||||||
kogami.qcow2
|
kogami.qcow2
|
||||||
ginoza.qcow2
|
ginoza.qcow2
|
||||||
|
docs/kogami.png
|
||||||
|
|
||||||
|
docs/masaoka.jpg
|
||||||
|
|
||||||
|
docs/tsunemori.jpg
|
||||||
|
|
||||||
|
ginoza/hardware-configuration.nix
|
||||||
|
|||||||
@ -194,3 +194,4 @@ nvim /nixos/system/packages/ssh-client.nix
|
|||||||
- [YT video about if else options](https://www.youtube.com/watch?v=Qull6TMQm4Q)
|
- [YT video about if else options](https://www.youtube.com/watch?v=Qull6TMQm4Q)
|
||||||
- [YT video about install with one command](https://www.youtube.com/watch?v=20BN4gqHwaQ&t=2025s)
|
- [YT video about install with one command](https://www.youtube.com/watch?v=20BN4gqHwaQ&t=2025s)
|
||||||
- [Vimjoyer's videos](https://www.youtube.com/@vimjoyer) - all videos
|
- [Vimjoyer's videos](https://www.youtube.com/@vimjoyer) - all videos
|
||||||
|
- [Hyprdots for Arch](https://github.com/prasanthrangan/hyprdots) - inspiration for look
|
||||||
|
|||||||
63
flake.lock
63
flake.lock
@ -128,11 +128,11 @@
|
|||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"dir": "pkgs/firefox-addons",
|
"dir": "pkgs/firefox-addons",
|
||||||
"lastModified": 1735902745,
|
"lastModified": 1735979945,
|
||||||
"narHash": "sha256-Jc4QaD2ay04ogn8XND8WLcs4ZsBBlk4j50OK+0AFFJ4=",
|
"narHash": "sha256-qT25PnbcQ30ypnI8fNazRDsq3WmBXC8Lo+OvPr+Ct+o=",
|
||||||
"owner": "rycee",
|
"owner": "rycee",
|
||||||
"repo": "nur-expressions",
|
"repo": "nur-expressions",
|
||||||
"rev": "bb5bbc46eb380d3a9bd12e5f7fdd171c65280a8a",
|
"rev": "b93d8cdf12139da45146a6c3cf53141a437c41ec",
|
||||||
"type": "gitlab"
|
"type": "gitlab"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -284,11 +284,11 @@
|
|||||||
"zig": "zig"
|
"zig": "zig"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1735875799,
|
"lastModified": 1735943291,
|
||||||
"narHash": "sha256-EI6C+CRmfHqkjnp0aJxYb/pTImwb5FZOu1HWHnnZsOc=",
|
"narHash": "sha256-igXLrO0AtN7+k7VaR5zaHaPhDcS3go5NZr4liVqW9g4=",
|
||||||
"owner": "ghostty-org",
|
"owner": "ghostty-org",
|
||||||
"repo": "ghostty",
|
"repo": "ghostty",
|
||||||
"rev": "e2f9eb6a6f4dc2108f91293938374c0ed314dcb8",
|
"rev": "1baf8928a0bd6ccc2f49e1e9478baab71d49a018",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -343,11 +343,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1735900408,
|
"lastModified": 1735979091,
|
||||||
"narHash": "sha256-U+oZBQ3f5fF2hHsupKQH4ihgTKLHgcJh6jEmKDg+W10=",
|
"narHash": "sha256-WpFjt6+8UD81EP386c269ZTqpEmlGJgcPw+OB4b7EBs=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "1c8d4c8d592e8fab4cff4397db5529ec6f078cf9",
|
"rev": "11ab08541e61ac3bbf2ab27229f68622629401df",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -474,11 +474,11 @@
|
|||||||
"xdph": "xdph"
|
"xdph": "xdph"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1735851503,
|
"lastModified": 1735946701,
|
||||||
"narHash": "sha256-r5FFHhiZZOOlzWsS06oz+7MKpjJydDXsD9N2NcKFSjE=",
|
"narHash": "sha256-jCIIiEjgIs02N36fJCd+aU7QiqqdMWokfpFWO+sTdn0=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "Hyprland",
|
"repo": "Hyprland",
|
||||||
"rev": "f3c49c1295126c2154ee800ceedb48b79451840c",
|
"rev": "60f069d54015fec66e63f1ff7e6ff26ddb349976",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -620,6 +620,26 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"install-script": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1735984946,
|
||||||
|
"narHash": "sha256-j6ZDTw9w64yC7sf9T2uwNbJjNNno1PiVUb3eQUgv1X8=",
|
||||||
|
"ref": "refs/heads/master",
|
||||||
|
"rev": "f75baa0990fce4fb51281e01b4a1ec2326231a47",
|
||||||
|
"revCount": 3,
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://git.foglar.tech/foglar/nix-flake-install-script"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://git.foglar.tech/foglar/nix-flake-install-script"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nix-formatter-pack": {
|
"nix-formatter-pack": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
@ -693,11 +713,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1735471104,
|
"lastModified": 1735834308,
|
||||||
"narHash": "sha256-0q9NGQySwDQc7RhAV2ukfnu7Gxa5/ybJ2ANT8DQrQrs=",
|
"narHash": "sha256-dklw3AXr3OGO4/XT1Tu3Xz9n/we8GctZZ75ZWVqAVhk=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "88195a94f390381c6afcdaa933c2f6ff93959cb4",
|
"rev": "6df24922a1400241dae323af55f30e4318a6ca65",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -928,6 +948,7 @@
|
|||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"home-manager-droid": "home-manager-droid",
|
"home-manager-droid": "home-manager-droid",
|
||||||
"hyprland": "hyprland",
|
"hyprland": "hyprland",
|
||||||
|
"install-script": "install-script",
|
||||||
"nix-ld": "nix-ld",
|
"nix-ld": "nix-ld",
|
||||||
"nix-on-droid": "nix-on-droid",
|
"nix-on-droid": "nix-on-droid",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
@ -983,11 +1004,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1735877772,
|
"lastModified": 1735964101,
|
||||||
"narHash": "sha256-6OT4xYCwZTJ9qK28NNM98ibFZinwrJK/sRlg+dDqdJs=",
|
"narHash": "sha256-FUKeipaDxAFf+0jun6CKk37g7UALIeisSz6L19KL+WM=",
|
||||||
"owner": "Gerg-L",
|
"owner": "Gerg-L",
|
||||||
"repo": "spicetify-nix",
|
"repo": "spicetify-nix",
|
||||||
"rev": "0227d83d2eb29189b8ed8d180e2442ada633dd0d",
|
"rev": "5b2bbc7a627ea983cef34f4a8ec81cd597529943",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -1015,11 +1036,11 @@
|
|||||||
"tinted-tmux": "tinted-tmux"
|
"tinted-tmux": "tinted-tmux"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1735864066,
|
"lastModified": 1735933801,
|
||||||
"narHash": "sha256-V1JmPXW3vmxCuvf+IItGlLgBH8rolUahCMFyglxy19s=",
|
"narHash": "sha256-SbkFaIYzfoasvu6GN5fdlaltrcEtUcoPsTRulWNkH7E=",
|
||||||
"owner": "danth",
|
"owner": "danth",
|
||||||
"repo": "stylix",
|
"repo": "stylix",
|
||||||
"rev": "0ce2a52decf36d815065f8cda06586ed59ed3ef7",
|
"rev": "e0a41d3a2562ce1b43cad8560333673d04b111b8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
39
flake.nix
39
flake.nix
@ -2,6 +2,11 @@
|
|||||||
description = "My highly sofisticated and complicated flake";
|
description = "My highly sofisticated and complicated flake";
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
|
install-script = {
|
||||||
|
url = "git+https://git.foglar.tech/foglar/nix-flake-install-script";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
|
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
|
||||||
nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-24.11";
|
nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-24.11";
|
||||||
|
|
||||||
@ -113,16 +118,6 @@
|
|||||||
allowUnfree = true;
|
allowUnfree = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Systems that can run tests:
|
|
||||||
supportedSystems = ["aarch64-linux" "i686-linux" "x86_64-linux"];
|
|
||||||
|
|
||||||
# Function to generate a set based on supported systems:
|
|
||||||
forAllSystems = inputs.nixpkgs.lib.genAttrs supportedSystems;
|
|
||||||
|
|
||||||
# Attribute set of nixpkgs for each system:
|
|
||||||
nixpkgsFor =
|
|
||||||
forAllSystems (system: import inputs.nixpkgs {inherit system;});
|
|
||||||
in {
|
in {
|
||||||
# NixOS Configurations
|
# NixOS Configurations
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
@ -167,29 +162,5 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Install script
|
|
||||||
packages = forAllSystems (system: let
|
|
||||||
pkgs = nixpkgsFor.${system};
|
|
||||||
in {
|
|
||||||
default = self.packages.${system}.install;
|
|
||||||
|
|
||||||
install = pkgs.writeShellApplication {
|
|
||||||
name = "install";
|
|
||||||
runtimeInputs = with pkgs; [git busybox gum];
|
|
||||||
text = ''
|
|
||||||
${./install.sh} "$@"
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
});
|
|
||||||
|
|
||||||
apps = forAllSystems (system: {
|
|
||||||
default = self.apps.${system}.install;
|
|
||||||
|
|
||||||
install = {
|
|
||||||
type = "app";
|
|
||||||
program = "${self.packages.${system}.install}/bin/install";
|
|
||||||
};
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -77,7 +77,7 @@
|
|||||||
programs.auto-cpufreq.enable = true;
|
programs.auto-cpufreq.enable = true;
|
||||||
programs.nix-ld.dev.enable = true;
|
programs.nix-ld.dev.enable = true;
|
||||||
|
|
||||||
environment.systemPackages = [inputs.ghostty.packages.x86_64-linux.default];
|
environment.systemPackages = [inputs.install-script.packages.x86_64-linux.default];
|
||||||
|
|
||||||
#services.twingate.enable = true;
|
#services.twingate.enable = true;
|
||||||
|
|
||||||
|
|||||||
@ -25,7 +25,8 @@
|
|||||||
ranger
|
ranger
|
||||||
unzip
|
unzip
|
||||||
fd
|
fd
|
||||||
imagemagick # convert images from formats like jpg, png, etc.
|
imagemagick
|
||||||
|
toybox # convert images from formats like jpg, png, etc.
|
||||||
]
|
]
|
||||||
++ (
|
++ (
|
||||||
if pkgs.system == "x86_64-linux"
|
if pkgs.system == "x86_64-linux"
|
||||||
|
|||||||
@ -21,6 +21,7 @@
|
|||||||
tcpdump
|
tcpdump
|
||||||
sqlmap
|
sqlmap
|
||||||
tor-browser
|
tor-browser
|
||||||
|
android-udev-rules
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2,6 +2,7 @@
|
|||||||
pkgs,
|
pkgs,
|
||||||
lib,
|
lib,
|
||||||
config,
|
config,
|
||||||
|
inputs,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
options = {
|
options = {
|
||||||
@ -10,17 +11,23 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
config = lib.mkIf config.app_list.programming.enable {
|
config = lib.mkIf config.app_list.programming.enable {
|
||||||
home.packages = with pkgs; [
|
home.packages =
|
||||||
arduino-ide
|
(with pkgs; [
|
||||||
distrobox
|
arduino-ide
|
||||||
go
|
distrobox
|
||||||
jq
|
go
|
||||||
conda
|
jq
|
||||||
jetbrains.pycharm-professional
|
conda
|
||||||
dotnet-sdk_8
|
jetbrains.pycharm-professional
|
||||||
git-ignore
|
dotnet-sdk_8
|
||||||
lazygit
|
git-ignore
|
||||||
];
|
lazygit
|
||||||
|
])
|
||||||
|
++ (
|
||||||
|
with inputs.ghostty.packages.x86_64-linux; [
|
||||||
|
default
|
||||||
|
]
|
||||||
|
);
|
||||||
|
|
||||||
nixpkgs.config.allowUnfreePredicate = pkg:
|
nixpkgs.config.allowUnfreePredicate = pkg:
|
||||||
builtins.elem (lib.getName pkg) [
|
builtins.elem (lib.getName pkg) [
|
||||||
|
|||||||
@ -1,3 +1,4 @@
|
|||||||
|
sync: ENC[AES256_GCM,data:2El2mY9XhCQ=,iv:EmgT5CgeCZjj9uwiDHbDNuty9czgQGJTSnXIIIm0JDM=,tag:ysZqmWibHkoQGjUoc/Mnxg==,type:str]
|
||||||
kogami:
|
kogami:
|
||||||
password-hash: ENC[AES256_GCM,data:HXuzumA7zAzBUcOBszeslYVDLA7r3W7gINn2FvMCTEHkc+y3zWftK4CVnk+TuRcgP9/htUphs2BmusogFAdmRQ3HmQU8WGQN0A==,iv:n2063dWbEmFKEvXbY2uk+C6lwF7WzA8jalKOFHPVICc=,tag:wb5bq4Dk3a9UnzYFBInHEA==,type:str]
|
password-hash: ENC[AES256_GCM,data:HXuzumA7zAzBUcOBszeslYVDLA7r3W7gINn2FvMCTEHkc+y3zWftK4CVnk+TuRcgP9/htUphs2BmusogFAdmRQ3HmQU8WGQN0A==,iv:n2063dWbEmFKEvXbY2uk+C6lwF7WzA8jalKOFHPVICc=,tag:wb5bq4Dk3a9UnzYFBInHEA==,type:str]
|
||||||
ginoza:
|
ginoza:
|
||||||
@ -21,8 +22,8 @@ sops:
|
|||||||
T0cxV21SN0hJaFg3R3hpTjIxa3lJNVEKdIrR5XDHxpCojk2A1pxc4dYtSJRrObbY
|
T0cxV21SN0hJaFg3R3hpTjIxa3lJNVEKdIrR5XDHxpCojk2A1pxc4dYtSJRrObbY
|
||||||
JS/nDgu74LugEchiOhuIJ7nh3MS5XBOmmt2GTHrqxZEZFoIykjIGug==
|
JS/nDgu74LugEchiOhuIJ7nh3MS5XBOmmt2GTHrqxZEZFoIykjIGug==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
lastmodified: "2024-12-30T11:16:07Z"
|
lastmodified: "2025-01-04T14:26:29Z"
|
||||||
mac: ENC[AES256_GCM,data:roSfCo0syYs/of6TRQ+IZhs/0sQPJPEkWvefjzz/ctC9Oi4zFh0xlsSBZk73l1d5cYwVOYIyxLcpXnuWJ2r8eKVLpVozik460rj7K5GlkRkcWYUE6nRv1Vzz5CVToCdx4ZX+3qG/gdDQXmpav+2ECadmysrlRaObQ9CpQm2jU6o=,iv:L8wOy6aWvB09EdCFe5I60J3LuBFxEDk4Aso+nU3wsPk=,tag:hYF1rrV8m+A8/ZGqww6HFQ==,type:str]
|
mac: ENC[AES256_GCM,data:5waKR2Ke3l5UIeg6nXqNMEYrQD75aXGsavQlbwQWRcyt+yr/Zn5CP+WB+8YTA56c+sZQ50xKiLP5q6WTEC3nnTb+AvOlvnF8FZ+NN+jLzDi9WbfWCChR3mAE3TbcLFfsdwKMwewLNjzRxGm9ErVORNo1+6i+VH8IUSBGcKTWy1s=,iv:Kem2lzKEUOEwtNkW57lfRFc3Ln7Au7mqbeA/9NEd0VU=,tag:9Nf4J7/SEIOPzRHeoBsVNA==,type:str]
|
||||||
pgp: []
|
pgp: []
|
||||||
unencrypted_suffix: _unencrypted
|
unencrypted_suffix: _unencrypted
|
||||||
version: 3.9.2
|
version: 3.9.2
|
||||||
|
|||||||
@ -32,7 +32,10 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Password hash
|
||||||
users.users.${userSettings.username}.hashedPasswordFile = "${config.sops.secrets."${userSettings.hostname}/password-hash".path}";
|
users.users.${userSettings.username}.hashedPasswordFile = "${config.sops.secrets."${userSettings.hostname}/password-hash".path}";
|
||||||
|
|
||||||
|
# YubiKey IDs
|
||||||
security.pam.yubico.id =
|
security.pam.yubico.id =
|
||||||
[]
|
[]
|
||||||
++ (
|
++ (
|
||||||
@ -40,5 +43,8 @@
|
|||||||
then ["${config.sops.secrets.yubikey_id}".value]
|
then ["${config.sops.secrets.yubikey_id}".value]
|
||||||
else []
|
else []
|
||||||
);
|
);
|
||||||
|
|
||||||
|
# Syncthing password
|
||||||
|
services.syncthing.settings.gui.password = "${config.sops.secrets."syncthing".value}";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
config = lib.mkIf config.sys.audio.enable {
|
config = lib.mkIf config.sys.audio.enable {
|
||||||
# Enable sound with pipewire.
|
# Enable sound with pipewire.
|
||||||
hardware.pulseaudio.enable = false;
|
services.pulseaudio.enable = false;
|
||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
services.pipewire = {
|
services.pipewire = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user