Compare commits
10 commits
c4a7b38132
...
89ab99cdc7
Author | SHA1 | Date | |
---|---|---|---|
|
89ab99cdc7 | ||
|
f2914acae6 | ||
|
88eff63ed8 | ||
|
3a5a841a95 | ||
|
80b4e19d65 | ||
|
d8d06011b4 | ||
|
e781dcc3e6 | ||
|
0683746604 | ||
|
c6f1f73d2f | ||
|
47d14ddb4e |
21 changed files with 308 additions and 191 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -1,2 +1,3 @@
|
||||||
result
|
result
|
||||||
flake.lock.bk
|
flake.lock.bk
|
||||||
|
sops
|
||||||
|
|
113
flake.lock
113
flake.lock
|
@ -4,17 +4,16 @@
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-parts": "flake-parts",
|
"flake-parts": "flake-parts",
|
||||||
"haskell-flake": "haskell-flake",
|
"haskell-flake": "haskell-flake",
|
||||||
"hercules-ci-effects": "hercules-ci-effects",
|
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1729444465,
|
"lastModified": 1733918465,
|
||||||
"narHash": "sha256-+lCi3cQlFNGAGKaVeUNhTeR40zvMy9JX4hp1JA0dLwE=",
|
"narHash": "sha256-hSuGa8Hh67EHr2x812Ay6WFyFT2BGKn+zk+FJWeKXPg=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "arion",
|
"repo": "arion",
|
||||||
"rev": "94d092fffd5cfd4f09b8988aca1b857a9d37c4d6",
|
"rev": "f01c95c10f9d4f04bb08d97b3233b530b180f12e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -28,11 +27,11 @@
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1730190761,
|
"lastModified": 1736711425,
|
||||||
"narHash": "sha256-o5m5WzvY6cGIDupuOvjgNSS8AN6yP2iI9MtUC6q/uos=",
|
"narHash": "sha256-8hKhPQuMtXfJi+4lPvw3FBk/zSJVHeb726Zo0uF1PP8=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "disko",
|
"repo": "disko",
|
||||||
"rev": "3979285062d6781525cded0f6c4ff92e71376b55",
|
"rev": "f720e64ec37fa16ebba6354eadf310f81555cc07",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -44,11 +43,11 @@
|
||||||
"dotfiles": {
|
"dotfiles": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1730844540,
|
"lastModified": 1732720152,
|
||||||
"narHash": "sha256-OL0TyXU/oYPplHg7t3OT/acL4oqhjmUJMgD+cX9CAlg=",
|
"narHash": "sha256-8/XX4SqEskwL5w31pQBKxWVlckWMB4X70vXuaKg48W8=",
|
||||||
"ref": "refs/heads/main",
|
"ref": "refs/heads/main",
|
||||||
"rev": "efcb87e599560b6cd86cbfc861108528257bdcbc",
|
"rev": "c1e41c894627eb73ef7cc6cf401c93caacbfac32",
|
||||||
"revCount": 52,
|
"revCount": 60,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/nomadics9/dotfiles.git"
|
"url": "https://github.com/nomadics9/dotfiles.git"
|
||||||
},
|
},
|
||||||
|
@ -65,11 +64,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1722555600,
|
"lastModified": 1733312601,
|
||||||
"narHash": "sha256-XOQkdLafnb/p9ij77byFQjDf5m5QYl9b2REiVClC+x4=",
|
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "8471fe90ad337a8074e957b69ca4d0089218391d",
|
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -78,27 +77,6 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-parts_2": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs-lib": [
|
|
||||||
"arion",
|
|
||||||
"hercules-ci-effects",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1712014858,
|
|
||||||
"narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=",
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"rev": "9126214d0a59633752a136528f5f3b9aa8565b7d",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"id": "flake-parts",
|
|
||||||
"type": "indirect"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"haskell-flake": {
|
"haskell-flake": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1675296942,
|
"lastModified": 1675296942,
|
||||||
|
@ -115,28 +93,6 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"hercules-ci-effects": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-parts": "flake-parts_2",
|
|
||||||
"nixpkgs": [
|
|
||||||
"arion",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1719226092,
|
|
||||||
"narHash": "sha256-YNkUMcCUCpnULp40g+svYsaH1RbSEj6s4WdZY/SHe38=",
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "hercules-ci-effects",
|
|
||||||
"rev": "11e4b8dc112e2f485d7c97e1cee77f9958f498f5",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "hercules-ci-effects",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"home-manager": {
|
"home-manager": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
@ -144,11 +100,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1730490306,
|
"lastModified": 1736508663,
|
||||||
"narHash": "sha256-AvCVDswOUM9D368HxYD25RsSKp+5o0L0/JHADjLoD38=",
|
"narHash": "sha256-ZOaGwa+WnB7Zn3YXimqjmIugAnHePdXCmNu+AHkq808=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "1743615b61c7285976f85b303a36cdf88a556503",
|
"rev": "2532b500c3ed2b8940e831039dcec5a5ea093afc",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -159,11 +115,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1725194671,
|
"lastModified": 1736241350,
|
||||||
"narHash": "sha256-tLGCFEFTB5TaOKkpfw3iYT9dnk4awTP/q4w+ROpMfuw=",
|
"narHash": "sha256-CHd7yhaDigUuJyDeX0SADbTM9FXfiWaeNyY34FL1wQU=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "b833ff01a0d694b910daca6e2ff4a3f26dee478c",
|
"rev": "8c9fd3e564728e90829ee7dbac6edc972971cd0f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -189,29 +145,13 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-stable_2": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1729973466,
|
|
||||||
"narHash": "sha256-knnVBGfTCZlQgxY1SgH0vn2OyehH9ykfF8geZgS95bk=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "cd3e8833d70618c4eea8df06f95b364b016d4950",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "release-24.05",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1730200266,
|
"lastModified": 1736701207,
|
||||||
"narHash": "sha256-l253w0XMT8nWHGXuXqyiIC/bMvh1VRszGXgdpQlfhvU=",
|
"narHash": "sha256-jG/+MvjVY7SlTakzZ2fJ5dC3V1PrKKrUEOEE30jrOKA=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "807e9154dcb16384b1b765ebe9cd2bba2ac287fd",
|
"rev": "ed4a395ea001367c1f13d34b1e01aa10290f67d6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -236,15 +176,14 @@
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
]
|
||||||
"nixpkgs-stable": "nixpkgs-stable_2"
|
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1729999681,
|
"lastModified": 1736515725,
|
||||||
"narHash": "sha256-qm0uCtM9bg97LeJTKQ8dqV/FvqRN+ompyW4GIJruLuw=",
|
"narHash": "sha256-4P99yL8vGehwzytkpP87eklBePt6aqeEC5JFsIzhfUs=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "sops-nix",
|
"repo": "sops-nix",
|
||||||
"rev": "1666d16426abe79af5c47b7c0efa82fd31bf4c56",
|
"rev": "f214c1b76c347a4e9c8fb68c73d4293a6820d125",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
@ -3,12 +3,16 @@
|
||||||
./zsh.nix
|
./zsh.nix
|
||||||
./fzf.nix
|
./fzf.nix
|
||||||
./neofetch.nix
|
./neofetch.nix
|
||||||
|
./nushell.nix
|
||||||
|
./fish.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
# Starship
|
# Starship
|
||||||
programs.starship = {
|
programs.starship = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableZshIntegration = true;
|
enableZshIntegration = true;
|
||||||
|
enableNushellIntegration = true;
|
||||||
|
enableFishIntegration = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.bat = { enable = true; };
|
programs.bat = { enable = true; };
|
||||||
|
@ -21,6 +25,7 @@
|
||||||
tldr
|
tldr
|
||||||
zip
|
zip
|
||||||
exiftool
|
exiftool
|
||||||
|
chafa
|
||||||
nvtopPackages.full
|
nvtopPackages.full
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
28
home/features/cli/fish.nix
Normal file
28
home/features/cli/fish.nix
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
{ config
|
||||||
|
, lib
|
||||||
|
, ...
|
||||||
|
}:
|
||||||
|
with lib; let
|
||||||
|
cfg = config.features.cli.fish;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.features.cli.fish.enable = mkEnableOption "enable extended fish configuration";
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
programs.fish = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
shellAliases = {
|
||||||
|
rebuild = "sudo nixos-rebuild switch";
|
||||||
|
dotfilesu = "nix flake lock --update-input dotfiles";
|
||||||
|
cleanold = "sudo nix-collect-garbage --delete-old";
|
||||||
|
cleanboot = "sudo /run/current-system/bin/switch-to-configuration boot";
|
||||||
|
};
|
||||||
|
functions = {
|
||||||
|
fish_greeting = ''
|
||||||
|
chafa --align=Center ~/sync/0nmd/logo.webp --scale=0.8 -f symbols --symbols w
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -29,7 +29,7 @@ in
|
||||||
};
|
};
|
||||||
defaultOptions = [
|
defaultOptions = [
|
||||||
"--preview='bat --color=always -n {}'"
|
"--preview='bat --color=always -n {}'"
|
||||||
"--bind 'ctrl-/:toggle-preview'"
|
"--bind 'ctrl-p:toggle-preview'"
|
||||||
];
|
];
|
||||||
defaultCommand = "fd --type f --exclude .git --follow --hidden";
|
defaultCommand = "fd --type f --exclude .git --follow --hidden";
|
||||||
changeDirWidgetCommand = "fd --type d --exclude .git --follow --hidden";
|
changeDirWidgetCommand = "fd --type d --exclude .git --follow --hidden";
|
||||||
|
|
|
@ -95,8 +95,8 @@ with lib; let
|
||||||
memory_display="on"
|
memory_display="on"
|
||||||
battery_display="on"
|
battery_display="on"
|
||||||
disk_display="on"
|
disk_display="on"
|
||||||
image_backend="kitty"
|
image_backend="chafa"
|
||||||
image_source="${config.home.homeDirectory}/nixcfg/assets/logo.png"
|
image_source="${config.home.homeDirectory}/dev/nixnix/nixcfg/assets/logo.png"
|
||||||
ascii_distro="off"
|
ascii_distro="off"
|
||||||
ascii="off"
|
ascii="off"
|
||||||
ascii_colors=(distro)
|
ascii_colors=(distro)
|
||||||
|
|
24
home/features/cli/nushell.nix
Normal file
24
home/features/cli/nushell.nix
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
{ config
|
||||||
|
, lib
|
||||||
|
, ...
|
||||||
|
}:
|
||||||
|
with lib; let
|
||||||
|
cfg = config.features.cli.nushell;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.features.cli.nushell.enable = mkEnableOption "enable extended nushell configuration";
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
programs.nushell = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
shellAliases = {
|
||||||
|
rebuild = "sudo nixos-rebuild switch";
|
||||||
|
dotfilesu = "nix flake lock --update-input dotfiles";
|
||||||
|
cleanold = "sudo nix-collect-garbage --delete-old";
|
||||||
|
cleanboot = "sudo /run/current-system/bin/switch-to-configuration boot";
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -23,17 +23,18 @@ in
|
||||||
# '';
|
# '';
|
||||||
|
|
||||||
shellAliases = {
|
shellAliases = {
|
||||||
switchhypr = "sudo nixos-rebuild switch --flake .";
|
rebuild = "sudo nixos-rebuild switch";
|
||||||
dotfilesu = "nix flake lock --update-input dotfiles";
|
dotfilesu = "nix flake lock --update-input dotfiles";
|
||||||
switchuhypr = "nix flake lock --update-input dotfiles && sudo nixos-rebuild switch --flake .";
|
|
||||||
clean = "sudo nix-collect-garbage -d";
|
|
||||||
cleanold = "sudo nix-collect-garbage --delete-old";
|
cleanold = "sudo nix-collect-garbage --delete-old";
|
||||||
cleanboot = "sudo /run/current-system/bin/switch-to-configuration boot";
|
cleanboot = "sudo /run/current-system/bin/switch-to-configuration boot";
|
||||||
nvim = "kitty @ set-spacing padding=0 && /run/current-system/sw/bin/nvim";
|
# nvim = "kitty @ set-spacing padding=0 && /run/current-system/sw/bin/nvim";
|
||||||
|
# nvim = "alacritty --config-file ~/.config/alacritty/alacritty_nvim.toml -e nvim";
|
||||||
|
|
||||||
};
|
};
|
||||||
initExtraFirst = "
|
initExtraFirst = ''
|
||||||
unsetopt beep
|
unsetopt beep
|
||||||
";
|
path+=('/home/nomad/.local/bin')
|
||||||
|
'';
|
||||||
autosuggestion.enable = true;
|
autosuggestion.enable = true;
|
||||||
syntaxHighlighting.enable = true;
|
syntaxHighlighting.enable = true;
|
||||||
# zplug = {
|
# zplug = {
|
||||||
|
|
|
@ -14,7 +14,8 @@ in
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
fira-code
|
fira-code
|
||||||
fira-code-symbols
|
fira-code-symbols
|
||||||
fira-code-nerdfont
|
nerd-fonts.fira-code
|
||||||
|
nerd-fonts.jetbrains-mono
|
||||||
font-manager
|
font-manager
|
||||||
font-awesome_5
|
font-awesome_5
|
||||||
font-awesome
|
font-awesome
|
||||||
|
|
|
@ -36,14 +36,14 @@ in
|
||||||
"XCURSOR_SIZE,24"
|
"XCURSOR_SIZE,24"
|
||||||
"NIXOS_OZONE_WL,1"
|
"NIXOS_OZONE_WL,1"
|
||||||
"GTK_THEME,Nightfox-Dark"
|
"GTK_THEME,Nightfox-Dark"
|
||||||
|
"QT_AUTO_SCREEN_SCALE_FACTOR,1"
|
||||||
|
"ELECTRON_EXTRA_FLAGS,--force-device-scale-factor=1.5"
|
||||||
];
|
];
|
||||||
|
|
||||||
input = {
|
input = {
|
||||||
kb_layout = "us,ara";
|
kb_layout = "us,ara";
|
||||||
kb_options = "grp:alt_shift_toggle";
|
kb_options = "grp:alt_shift_toggle";
|
||||||
kb_variant = "qwerty_digits";
|
kb_variant = "qwerty_digits";
|
||||||
#kb_model = "pc105";
|
|
||||||
#kb_rules = "evdev";
|
|
||||||
follow_mouse = 1;
|
follow_mouse = 1;
|
||||||
|
|
||||||
touchpad = {
|
touchpad = {
|
||||||
|
@ -52,11 +52,11 @@ in
|
||||||
tap-to-click = 1;
|
tap-to-click = 1;
|
||||||
};
|
};
|
||||||
|
|
||||||
sensitivity = 0.1;
|
sensitivity = 0.25;
|
||||||
};
|
};
|
||||||
|
|
||||||
general = {
|
general = {
|
||||||
gaps_in = 5;
|
gaps_in = 3;
|
||||||
gaps_out = 5;
|
gaps_out = 5;
|
||||||
border_size = 2;
|
border_size = 2;
|
||||||
"col.active_border" = "rgba(5faaffee) rgba(5faaffee) 45deg";
|
"col.active_border" = "rgba(5faaffee) rgba(5faaffee) 45deg";
|
||||||
|
@ -65,13 +65,15 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
decoration = {
|
decoration = {
|
||||||
"col.shadow" = "rgba(1E202966)";
|
|
||||||
drop_shadow = true;
|
|
||||||
shadow_range = 60;
|
|
||||||
shadow_offset = "1 2";
|
|
||||||
shadow_render_power = 3;
|
|
||||||
shadow_scale = 0.97;
|
|
||||||
rounding = 8;
|
rounding = 8;
|
||||||
|
shadow = {
|
||||||
|
enabled = true;
|
||||||
|
color = "rgba(1E202966)";
|
||||||
|
range = 60;
|
||||||
|
offset = "1 2";
|
||||||
|
render_power = 3;
|
||||||
|
scale = 0.97;
|
||||||
|
};
|
||||||
blur = {
|
blur = {
|
||||||
enabled = true;
|
enabled = true;
|
||||||
size = 3;
|
size = 3;
|
||||||
|
@ -170,9 +172,9 @@ in
|
||||||
"$mainMod SHIFT, k, movewindow, u"
|
"$mainMod SHIFT, k, movewindow, u"
|
||||||
"$mainMod SHIFT, j, movewindow, d"
|
"$mainMod SHIFT, j, movewindow, d"
|
||||||
|
|
||||||
"$mainMod SHIFT, t, exec, kitty --start-as=fullscreen -o 'font_size=18' --title all_is_kitty"
|
"$mainMod SHIFT, t, exec, alacritty --start-as=fullscreen -o 'font_size=18' --title all_is_kitty"
|
||||||
"ALT, RETURN, exec, kitty --title fly_is_kitty"
|
"ALT, RETURN, exec, alacritty --title fly_is_kitty"
|
||||||
"$mainMod, RETURN, exec, kitty --title kitty_term"
|
"$mainMod, RETURN, exec, alacritty"
|
||||||
|
|
||||||
"$mainMod, C, killactive"
|
"$mainMod, C, killactive"
|
||||||
"$mainMod SHIFT, Q, exit"
|
"$mainMod SHIFT, Q, exit"
|
||||||
|
@ -186,10 +188,10 @@ in
|
||||||
|
|
||||||
# Screen shot
|
# Screen shot
|
||||||
"$mainMod, S, exec, hyprctl keyword animation 'fadeOut,0,0,default'; grimshot --notify copy active; hyprctl keyword animation 'fadeOut,1,4,default'"
|
"$mainMod, S, exec, hyprctl keyword animation 'fadeOut,0,0,default'; grimshot --notify copy active; hyprctl keyword animation 'fadeOut,1,4,default'"
|
||||||
"$mainMod SHIFT, S, exec, grimshot savecopy area - | swappy -f - -o ~/Photos/screenshot-$(date +'%d-%m-%Y_%H:%M').png"
|
"$mainMod SHIFT, S, exec, grimshot savecopy area - | swappy -f - -o ~/Photos/screenshots/screenshot-$(date +'%d-%m-%Y_%H%M').png"
|
||||||
|
|
||||||
# Screen recorder
|
# Screen recorder
|
||||||
"$mainMod SHIFT, R, exec, wf-recorder & dunstify -a 'Recordering Started' -i -u -A '^C ,stop' -t 0 -i ~/icons/rec-button.png"
|
"$mainMod SHIFT, R, exec, wf-recorder -a -f ~/Video/recording.mkv & notify-send 'Recordering Started' -i -u -A '^C ,stop' -t 0 -i ~/icons/rec-button.png"
|
||||||
|
|
||||||
# Emoji selector
|
# Emoji selector
|
||||||
"$mainMod SHIFT, E, exec, rofimoji"
|
"$mainMod SHIFT, E, exec, rofimoji"
|
||||||
|
|
|
@ -43,7 +43,9 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
"hyprland/language" = {
|
"hyprland/language" = {
|
||||||
format = "{short}";
|
format = "{}";
|
||||||
|
format-ar = "🇰🇼 ";
|
||||||
|
format-en = "🇬🇧 ";
|
||||||
};
|
};
|
||||||
|
|
||||||
"tray" = {
|
"tray" = {
|
||||||
|
|
|
@ -10,7 +10,9 @@
|
||||||
|
|
||||||
features = {
|
features = {
|
||||||
cli = {
|
cli = {
|
||||||
zsh.enable = true;
|
zsh.enable = false;
|
||||||
|
nushell.enable = false;
|
||||||
|
fish.enable = true;
|
||||||
fzf.enable = true;
|
fzf.enable = true;
|
||||||
neofetch.enable = true;
|
neofetch.enable = true;
|
||||||
};
|
};
|
||||||
|
@ -31,18 +33,18 @@
|
||||||
wayland.windowManager.hyprland = {
|
wayland.windowManager.hyprland = {
|
||||||
settings = {
|
settings = {
|
||||||
monitor = [
|
monitor = [
|
||||||
"eDP-1,2560x1600@60,0x0,1.25"
|
"DP-1,highres,auto,1"
|
||||||
"DP-2,1920x1080@60,auto,1"
|
"eDP-1,2560x1600@60,0x0,1.25,mirror,DP-1"
|
||||||
|
|
||||||
];
|
];
|
||||||
workspace = [
|
workspace = [
|
||||||
"1, monitor:eDP-1, default:true"
|
# "1, monitor:DP-1, default:true"
|
||||||
"2, monitor:eDP-1"
|
# "2, monitor:DP-1"
|
||||||
"3, monitor:eDP-1"
|
# "3, monitor:DP-1"
|
||||||
"4, monitor:eDP-1"
|
# "4, monitor:DP-1"
|
||||||
"5, monitor:eDP-1"
|
# "5, monitor:DP-1"
|
||||||
"6, monitor:eDP-1"
|
# "6, monitor:DP-1"
|
||||||
"7, monitor:eDP-1"
|
# "7, monitor:DP-1"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -12,6 +12,8 @@
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
# Essentials
|
# Essentials
|
||||||
kitty
|
kitty
|
||||||
|
alacritty
|
||||||
|
tmux
|
||||||
firefox
|
firefox
|
||||||
google-chrome
|
google-chrome
|
||||||
age
|
age
|
||||||
|
@ -22,8 +24,8 @@
|
||||||
vlc
|
vlc
|
||||||
amberol
|
amberol
|
||||||
webcord
|
webcord
|
||||||
bottles
|
#bottles
|
||||||
cava
|
#cava
|
||||||
ryujinx
|
ryujinx
|
||||||
mullvad-vpn
|
mullvad-vpn
|
||||||
transmission_4-gtk
|
transmission_4-gtk
|
||||||
|
@ -32,12 +34,13 @@
|
||||||
syncthing
|
syncthing
|
||||||
qsyncthingtray
|
qsyncthingtray
|
||||||
htop
|
htop
|
||||||
nvtopPackages.full
|
openvpn
|
||||||
|
#nvtopPackages.full
|
||||||
exiftool
|
exiftool
|
||||||
moonlight-qt
|
moonlight-qt
|
||||||
kdePackages.kdeconnect-kde
|
kdePackages.kdeconnect-kde
|
||||||
cmatrix
|
cmatrix
|
||||||
jellyfin-media-player
|
#jellyfin-media-player
|
||||||
speedtest-go
|
speedtest-go
|
||||||
wireguard-tools
|
wireguard-tools
|
||||||
# Dev
|
# Dev
|
||||||
|
@ -54,14 +57,15 @@
|
||||||
nodejs
|
nodejs
|
||||||
gcc
|
gcc
|
||||||
python312Packages.pip
|
python312Packages.pip
|
||||||
#zed-fhs
|
android-studio
|
||||||
# android-studio
|
android-tools
|
||||||
# android-tools
|
|
||||||
jre17_minimal
|
jre17_minimal
|
||||||
# Nvim
|
# Nvim-Lsps
|
||||||
lua-language-server
|
lua-language-server
|
||||||
|
tailwindcss-language-server
|
||||||
glow
|
glow
|
||||||
#hk
|
# Hacks
|
||||||
|
responder-patched
|
||||||
|
|
||||||
|
|
||||||
# # Adds the 'hello' command to your environment. It prints a friendly
|
# # Adds the 'hello' command to your environment. It prints a friendly
|
||||||
|
@ -106,6 +110,8 @@
|
||||||
NIXOS_OZONE_WL = "1";
|
NIXOS_OZONE_WL = "1";
|
||||||
MOZ_ENABLE_WAYLAND = "1";
|
MOZ_ENABLE_WAYLAND = "1";
|
||||||
SDL_VIDEODRIVER = "wayland";
|
SDL_VIDEODRIVER = "wayland";
|
||||||
|
QT_AUTO_SCREEN_SCALE_FACTOR = "1";
|
||||||
|
ELECTRON_EXTRA_FLAGS = "--force-device-scale-factor=1.5";
|
||||||
#_JAVA_AWT_WM_NONREPARENTING = "1";
|
#_JAVA_AWT_WM_NONREPARENTING = "1";
|
||||||
#MOZ_DRM_DEVICE = "/dev/dri/card0:/dev/dri/card1";
|
#MOZ_DRM_DEVICE = "/dev/dri/card0:/dev/dri/card1";
|
||||||
#WLR_DRM_DEVICES = "/dev/dri/card0:/dev/dri/card1";
|
#WLR_DRM_DEVICES = "/dev/dri/card0:/dev/dri/card1";
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
|
|
||||||
features = {
|
features = {
|
||||||
cli = {
|
cli = {
|
||||||
zsh.enable = true;
|
fish.enable = true;
|
||||||
fzf.enable = true;
|
fzf.enable = true;
|
||||||
neofetch.enable = true;
|
neofetch.enable = true;
|
||||||
};
|
};
|
||||||
|
|
|
@ -13,7 +13,7 @@ in
|
||||||
services.gnome.gnome-keyring.enable = true;
|
services.gnome.gnome-keyring.enable = true;
|
||||||
programs.nautilus-open-any-terminal = {
|
programs.nautilus-open-any-terminal = {
|
||||||
enable = true;
|
enable = true;
|
||||||
terminal = "kitty";
|
terminal = "alacritty";
|
||||||
};
|
};
|
||||||
services.gvfs.enable = true;
|
services.gvfs.enable = true;
|
||||||
services.tumbler.enable = true;
|
services.tumbler.enable = true;
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
${user} = {
|
${user} = {
|
||||||
initialPassword = "4321";
|
initialPassword = "4321";
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
shell = pkgs.zsh;
|
shell = pkgs.fish;
|
||||||
description = "${user}";
|
description = "${user}";
|
||||||
extraGroups = [
|
extraGroups = [
|
||||||
"wheel"
|
"wheel"
|
||||||
|
@ -26,6 +26,7 @@
|
||||||
"wireshark"
|
"wireshark"
|
||||||
];
|
];
|
||||||
packages = [ inputs.home-manager.packages.${pkgs.system}.default ];
|
packages = [ inputs.home-manager.packages.${pkgs.system}.default ];
|
||||||
|
|
||||||
openssh.authorizedKeys.keys = [
|
openssh.authorizedKeys.keys = [
|
||||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICqA7j8hk3+k0b04eDxuoUakldqKrP0aatLm+CREjFJe" #SSH, YOU HAVE TO CHANGE THIS OR REMOVE IT
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICqA7j8hk3+k0b04eDxuoUakldqKrP0aatLm+CREjFJe" #SSH, YOU HAVE TO CHANGE THIS OR REMOVE IT
|
||||||
];
|
];
|
||||||
|
@ -49,7 +50,6 @@
|
||||||
NEXTCLOUD_DB = { };
|
NEXTCLOUD_DB = { };
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
sops.templates."my-env.env".content = ''
|
sops.templates."my-env.env".content = ''
|
||||||
DUFS_USERNAME = "${config.sops.placeholder.DUFS_USERNAME}"
|
DUFS_USERNAME = "${config.sops.placeholder.DUFS_USERNAME}"
|
||||||
DUFS_PASSWORD = "${config.sops.placeholder.DUFS_PASSWORD}"
|
DUFS_PASSWORD = "${config.sops.placeholder.DUFS_PASSWORD}"
|
||||||
|
@ -58,7 +58,13 @@
|
||||||
NEXTCLOUD_DB = "${config.sops.placeholder.NEXTCLOUD_DB}"
|
NEXTCLOUD_DB = "${config.sops.placeholder.NEXTCLOUD_DB}"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
programs.zsh.enable = true;
|
programs.wireshark = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.wireshark;
|
||||||
|
};
|
||||||
|
|
||||||
|
# programs.zsh.enable = true;
|
||||||
|
programs.fish.enable = true;
|
||||||
home-manager.users.${user} =
|
home-manager.users.${user} =
|
||||||
import ../../../home/${user}/${config.networking.hostName}.nix;
|
import ../../../home/${user}/${config.networking.hostName}.nix;
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,7 +27,14 @@
|
||||||
common.services.steam.enable = true;
|
common.services.steam.enable = true;
|
||||||
services.flatpak.enable = true;
|
services.flatpak.enable = true;
|
||||||
|
|
||||||
programs.wireshark.enable = true;
|
# Sops secrets Comment this out if you dont need secrets! and configure ur user in hosts/common/users/YOURUSERNAME.nix
|
||||||
|
sops = {
|
||||||
|
age.keyFile = "/etc/nixos/sops/age/keys.txt";
|
||||||
|
defaultSopsFile = ../../secrets/secrets.yaml;
|
||||||
|
defaultSopsFormat = "yaml";
|
||||||
|
};
|
||||||
|
|
||||||
|
#services.samba.enable = true;
|
||||||
|
|
||||||
|
|
||||||
#Bootloader
|
#Bootloader
|
||||||
|
@ -39,14 +46,6 @@
|
||||||
# Ntfs support
|
# Ntfs support
|
||||||
boot.supportedFilesystems = [ "ntfs" ];
|
boot.supportedFilesystems = [ "ntfs" ];
|
||||||
|
|
||||||
# Sops secrets Comment this out if you dont need secrets! and configure ur user in hosts/common/users/YOURUSERNAME.nix
|
|
||||||
sops = {
|
|
||||||
age.keyFile = "/etc/nixos/sops/age/keys.txt";
|
|
||||||
defaultSopsFile = ../../secrets/secrets.yaml;
|
|
||||||
defaultSopsFormat = "yaml";
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Enable GDM Login Manager
|
# Enable GDM Login Manager
|
||||||
services.xserver.enable = true;
|
services.xserver.enable = true;
|
||||||
|
@ -67,10 +66,18 @@
|
||||||
networking.hostName = "${hostname}";
|
networking.hostName = "${hostname}";
|
||||||
# Enable networking
|
# Enable networking
|
||||||
networking.networkmanager.enable = true;
|
networking.networkmanager.enable = true;
|
||||||
|
services.avahi = {
|
||||||
|
enable = true;
|
||||||
|
nssmdns4 = true;
|
||||||
|
};
|
||||||
|
#Hosts
|
||||||
|
networking.extraHosts = ''
|
||||||
|
192.168.0.200 rancher.local
|
||||||
|
'';
|
||||||
|
|
||||||
# Bluethooth
|
# Bluethooth
|
||||||
hardware.bluetooth.enable = true;
|
hardware.bluetooth.enable = true;
|
||||||
# services.blueman.enable = true;
|
services.blueman.enable = true;
|
||||||
|
|
||||||
# Enable sound with pipewire.
|
# Enable sound with pipewire.
|
||||||
# sound.enable = true;
|
# sound.enable = true;
|
||||||
|
@ -87,7 +94,10 @@
|
||||||
|
|
||||||
|
|
||||||
# Set your time zone.
|
# Set your time zone.
|
||||||
time.timeZone = "Asia/Kuwait";
|
#time.timeZone = "Asia/Kuwait";
|
||||||
|
services.ntp = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
# Select internationalisation properties.
|
# Select internationalisation properties.
|
||||||
i18n.defaultLocale = "en_US.UTF-8";
|
i18n.defaultLocale = "en_US.UTF-8";
|
||||||
i18n.extraLocaleSettings = {
|
i18n.extraLocaleSettings = {
|
||||||
|
@ -106,7 +116,7 @@
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
exportConfiguration = true; # link /usr/share/X11/ properly
|
exportConfiguration = true; # link /usr/share/X11/ properly
|
||||||
xkb.layout = "us,ara";
|
xkb.layout = "us,ara";
|
||||||
xkb.options = "grp:alt_shift_toggle";
|
xkb.options = "grp:alt_shift_toggle,ctrl:swapcaps";
|
||||||
xkb.variant = "qwerty_digits";
|
xkb.variant = "qwerty_digits";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -127,6 +137,7 @@
|
||||||
neovim
|
neovim
|
||||||
git
|
git
|
||||||
zsh
|
zsh
|
||||||
|
nssmdns
|
||||||
];
|
];
|
||||||
|
|
||||||
#Firewall
|
#Firewall
|
||||||
|
@ -136,6 +147,7 @@
|
||||||
# networking.firewall.allowedUDPPortRanges = [ { from = 32768; to = 60999; } ];
|
# networking.firewall.allowedUDPPortRanges = [ { from = 32768; to = 60999; } ];
|
||||||
# Or disable the firewall altogether.
|
# Or disable the firewall altogether.
|
||||||
networking.firewall.enable = false;
|
networking.firewall.enable = false;
|
||||||
|
networking.nftables.enable = false;
|
||||||
|
|
||||||
|
|
||||||
# Before changing this value read the documentation for this option
|
# Before changing this value read the documentation for this option
|
||||||
|
|
|
@ -74,7 +74,8 @@ in
|
||||||
virtualisation.docker = {
|
virtualisation.docker = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableOnBoot = true;
|
enableOnBoot = true;
|
||||||
#enableNvidia = true;
|
enableNvidia = true;
|
||||||
|
extraOptions = ''--data-root=/home/nomad/docker-data'';
|
||||||
};
|
};
|
||||||
|
|
||||||
hardware.nvidia-container-toolkit.enable = true;
|
hardware.nvidia-container-toolkit.enable = true;
|
||||||
|
|
|
@ -90,7 +90,22 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
nmd.mov {
|
nmd.mov www.nmd.mov {
|
||||||
|
reverse_proxy localhost:3001
|
||||||
|
}
|
||||||
|
|
||||||
|
www.alaskar.dev alaskar.dev {
|
||||||
|
root * /var/www/portofolio
|
||||||
|
file_server
|
||||||
|
try_files {path} {path}.html
|
||||||
|
handle_errors {
|
||||||
|
rewrite * /404.html
|
||||||
|
file_server
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
log.nmd.mov {
|
||||||
root * /var/www/goaccess
|
root * /var/www/goaccess
|
||||||
|
|
||||||
file_server
|
file_server
|
||||||
|
|
|
@ -183,7 +183,8 @@ echo -e "$GREEN Configuration has been updated with your preferences $ENDCOLOR"
|
||||||
|
|
||||||
sleep 2
|
sleep 2
|
||||||
git add .
|
git add .
|
||||||
nixos-rebuild boot --flake .#unkown
|
nixos-rebuild switch --flake .#unkown
|
||||||
|
home-manager switch -b backup --flake .
|
||||||
|
|
||||||
echo -e "$GREEN Reboot after completion your initial password is 4321 $ENDCOLOR"
|
echo -e "$GREEN Reboot after completion your initial password is 4321 $ENDCOLOR"
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,74 @@
|
||||||
# example = prev.example.overrideAttrs (oldAttrs: rec {
|
# example = prev.example.overrideAttrs (oldAttrs: rec {
|
||||||
# ...
|
# ...
|
||||||
# });
|
# });
|
||||||
|
|
||||||
rofimoji = prev.rofimoji.override { rofi = prev.rofi-wayland; };
|
rofimoji = prev.rofimoji.override { rofi = prev.rofi-wayland; };
|
||||||
|
|
||||||
|
# electron = prev.electron.overrideAttrs (oldAttrs: {
|
||||||
|
# postInstall = ''
|
||||||
|
# wrapProgram $out/bin/electron \
|
||||||
|
# --add-flags "--force-device-scale-factor=1.5"
|
||||||
|
# '';
|
||||||
|
# });
|
||||||
|
|
||||||
|
responder-patched = prev.responder.overrideAttrs (oldAttrs: rec {
|
||||||
|
buildInputs = oldAttrs.buildInputs or [ ] ++ [ prev.openssl prev.coreutils ];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
mkdir -p $out/bin $out/share/Responder
|
||||||
|
cp -R . $out/share/Responder
|
||||||
|
|
||||||
|
makeWrapper ${prev.python3.interpreter} $out/bin/responder \
|
||||||
|
--set PYTHONPATH "$PYTHONPATH:$out/share/Responder" \
|
||||||
|
--add-flags "$out/share/Responder/Responder.py" \
|
||||||
|
--run "mkdir -p /var/lib/responder"
|
||||||
|
|
||||||
|
substituteInPlace $out/share/Responder/Responder.conf \
|
||||||
|
--replace-quiet "Responder-Session.log" "/var/lib/responder/Responder-Session.log" \
|
||||||
|
--replace-quiet "Poisoners-Session.log" "/var/lib/responder/Poisoners-Session.log" \
|
||||||
|
--replace-quiet "Analyzer-Session.log" "/var/lib/responder/Analyzer-Session.log" \
|
||||||
|
--replace-quiet "Config-Responder.log" "/var/lib/responder/Config-Responder.log" \
|
||||||
|
--replace-quiet "Responder.db" "/var/lib/responder/Responder.db"
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
|
||||||
|
runHook postPatch
|
||||||
|
'';
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
wrapProgram $out/bin/responder \
|
||||||
|
--run "mkdir -p /var/lib/responder/certs && ${prev.openssl}/bin/openssl genrsa -out /var/lib/responder/certs/responder.key 2048 && ${prev.openssl}/bin/openssl req -new -x509 -days 3650 -key /var/lib/responder/certs/responder.key -out /var/lib/responder/certs/responder.crt -subj '/'" \
|
||||||
|
--run "mkdir -p /etc/responder && if [ ! -f /etc/responder/Responder.conf ]; then cp $out/share/Responder/Responder.conf /etc/responder/Responder.conf && chmod +w /etc/responder/Responder.conf; fi"
|
||||||
|
'';
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
if [ -f $out/share/Responder/settings.py ]; then
|
||||||
|
substituteInPlace $out/share/Responder/settings.py \
|
||||||
|
--replace-quiet "self.LogDir = os.path.join(self.ResponderPATH, 'logs')" "self.LogDir = os.path.join('/var/lib/responder', 'logs')" \
|
||||||
|
--replace-quiet "os.path.join(self.ResponderPATH, 'Responder.conf')" "'/etc/responder/Responder.conf'"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f $out/share/Responder/utils.py ]; then
|
||||||
|
substituteInPlace $out/share/Responder/utils.py \
|
||||||
|
--replace-quiet "logfile = os.path.join(settings.Config.ResponderPATH, 'logs', fname)" "logfile = os.path.join('/var/lib/responder', 'logs', fname)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f $out/share/Responder/Responder.py ]; then
|
||||||
|
substituteInPlace $out/share/Responder/Responder.py \
|
||||||
|
--replace-quiet "certs/responder.crt" "/var/lib/responder/certs/responder.crt" \
|
||||||
|
--replace-quiet "certs/responder.key" "/var/lib/responder/certs/responder.key"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f $out/share/Responder/Responder.conf ]; then
|
||||||
|
substituteInPlace $out/share/Responder/Responder.conf \
|
||||||
|
--replace-quiet "certs/responder.crt" "/var/lib/responder/certs/responder.crt" \
|
||||||
|
--replace-quiet "certs/responder.key" "/var/lib/responder/certs/responder.key"
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
});
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
stable-packages = final: _prev: {
|
stable-packages = final: _prev: {
|
||||||
|
@ -20,3 +87,7 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue