Compare commits

...

5 commits

Author SHA1 Message Date
Pedro Rey Anca 1fbc96fe98 Refactor 2024-07-09 13:14:50 +02:00
Pedro Rey Anca e775534e96 Update waybar 2024-07-09 10:10:09 +02:00
Pedro Rey Anca 1bb44073ba Use nixpkgs alejandra 2024-07-09 10:01:20 +02:00
Pedro Rey Anca a589e94805 Add nextcloud-client 2024-07-09 09:53:44 +02:00
Pedro Rey Anca a922e8d0df Fix formatting 2024-07-09 00:28:55 +02:00
8 changed files with 159 additions and 233 deletions

View file

@ -1,26 +1,5 @@
{ {
"nodes": { "nodes": {
"alejandra": {
"inputs": {
"fenix": "fenix",
"flakeCompat": "flakeCompat",
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1660592437,
"narHash": "sha256-xFumnivtVwu5fFBOrTxrv6fv3geHKF04RGP23EsDVaI=",
"owner": "kamadorueda",
"repo": "alejandra",
"rev": "e7eac49074b70814b542fee987af2987dd0520b5",
"type": "github"
},
"original": {
"owner": "kamadorueda",
"ref": "3.0.0",
"repo": "alejandra",
"type": "github"
}
},
"catppuccin-bat": { "catppuccin-bat": {
"flake": false, "flake": false,
"locked": { "locked": {
@ -69,35 +48,13 @@
"type": "github" "type": "github"
} }
}, },
"fenix": {
"inputs": {
"nixpkgs": [
"alejandra",
"nixpkgs"
],
"rust-analyzer-src": "rust-analyzer-src"
},
"locked": {
"lastModified": 1657607339,
"narHash": "sha256-HaqoAwlbVVZH2n4P3jN2FFPMpVuhxDy1poNOR7kzODc=",
"owner": "nix-community",
"repo": "fenix",
"rev": "b814c83d9e6aa5a28d0cf356ecfdafb2505ad37d",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "fenix",
"type": "github"
}
},
"fjordlauncher": { "fjordlauncher": {
"inputs": { "inputs": {
"flake-compat": "flake-compat", "flake-compat": "flake-compat",
"flake-parts": "flake-parts", "flake-parts": "flake-parts",
"libnbtplusplus": "libnbtplusplus", "libnbtplusplus": "libnbtplusplus",
"nix-filter": "nix-filter", "nix-filter": "nix-filter",
"nixpkgs": "nixpkgs_2", "nixpkgs": "nixpkgs",
"pre-commit-hooks": "pre-commit-hooks" "pre-commit-hooks": "pre-commit-hooks"
}, },
"locked": { "locked": {
@ -169,22 +126,6 @@
"type": "github" "type": "github"
} }
}, },
"flakeCompat": {
"flake": false,
"locked": {
"lastModified": 1650374568,
"narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "b4a34015c698c7793d592d66adbab377907a2be8",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"gitignore": { "gitignore": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -229,7 +170,7 @@
}, },
"hypr-contrib": { "hypr-contrib": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs_3" "nixpkgs": "nixpkgs_2"
}, },
"locked": { "locked": {
"lastModified": 1718476555, "lastModified": 1718476555,
@ -280,7 +221,7 @@
"hyprlang": "hyprlang", "hyprlang": "hyprlang",
"hyprutils": "hyprutils", "hyprutils": "hyprutils",
"hyprwayland-scanner": "hyprwayland-scanner", "hyprwayland-scanner": "hyprwayland-scanner",
"nixpkgs": "nixpkgs_4", "nixpkgs": "nixpkgs_3",
"systems": "systems", "systems": "systems",
"xdph": "xdph" "xdph": "xdph"
}, },
@ -358,7 +299,7 @@
}, },
"hyprpicker": { "hyprpicker": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs_5" "nixpkgs": "nixpkgs_4"
}, },
"locked": { "locked": {
"lastModified": 1719873934, "lastModified": 1719873934,
@ -458,7 +399,7 @@
"nix-gaming": { "nix-gaming": {
"inputs": { "inputs": {
"flake-parts": "flake-parts_2", "flake-parts": "flake-parts_2",
"nixpkgs": "nixpkgs_6" "nixpkgs": "nixpkgs_5"
}, },
"locked": { "locked": {
"lastModified": 1720185178, "lastModified": 1720185178,
@ -476,16 +417,16 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1657425264, "lastModified": 1719826879,
"narHash": "sha256-3aHvoI2e8vJKw3hvnHECaBpSsL5mxVsVtaLCnTdNcH8=", "narHash": "sha256-xs7PlULe8O1SAcs/9e/HOjeUjBrU5FNtkAF/bSEcFto=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "de5b3dd17034e6106e75746e81618e5bd408de8a", "rev": "b9014df496d5b68bf7c0145d0e9b0f529ce4f2a8",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nixos", "owner": "nixos",
"ref": "nixos-unstable-small", "ref": "nixpkgs-unstable",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
@ -503,22 +444,6 @@
} }
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": {
"lastModified": 1719826879,
"narHash": "sha256-xs7PlULe8O1SAcs/9e/HOjeUjBrU5FNtkAF/bSEcFto=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "b9014df496d5b68bf7c0145d0e9b0f529ce4f2a8",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1712163089, "lastModified": 1712163089,
"narHash": "sha256-Um+8kTIrC19vD4/lUCN9/cU9kcOsD1O1m+axJqQPyMM=", "narHash": "sha256-Um+8kTIrC19vD4/lUCN9/cU9kcOsD1O1m+axJqQPyMM=",
@ -534,7 +459,7 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_4": { "nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1719075281, "lastModified": 1719075281,
"narHash": "sha256-CyyxvOwFf12I91PBWz43iGT1kjsf5oi6ax7CrvaMyAo=", "narHash": "sha256-CyyxvOwFf12I91PBWz43iGT1kjsf5oi6ax7CrvaMyAo=",
@ -550,7 +475,7 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_5": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1683014792, "lastModified": 1683014792,
"narHash": "sha256-6Va9iVtmmsw4raBc3QKvQT2KT/NGRWlvUlJj46zN8B8=", "narHash": "sha256-6Va9iVtmmsw4raBc3QKvQT2KT/NGRWlvUlJj46zN8B8=",
@ -566,7 +491,7 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_6": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1719468428, "lastModified": 1719468428,
"narHash": "sha256-vN5xJAZ4UGREEglh3lfbbkIj+MPEYMuqewMn4atZFaQ=", "narHash": "sha256-vN5xJAZ4UGREEglh3lfbbkIj+MPEYMuqewMn4atZFaQ=",
@ -582,7 +507,7 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_7": { "nixpkgs_6": {
"locked": { "locked": {
"lastModified": 1720031269, "lastModified": 1720031269,
"narHash": "sha256-rwz8NJZV+387rnWpTYcXaRNvzUSnnF9aHONoJIYmiUQ=", "narHash": "sha256-rwz8NJZV+387rnWpTYcXaRNvzUSnnF9aHONoJIYmiUQ=",
@ -645,7 +570,6 @@
}, },
"root": { "root": {
"inputs": { "inputs": {
"alejandra": "alejandra",
"catppuccin-bat": "catppuccin-bat", "catppuccin-bat": "catppuccin-bat",
"catppuccin-cava": "catppuccin-cava", "catppuccin-cava": "catppuccin-cava",
"catppuccin-starship": "catppuccin-starship", "catppuccin-starship": "catppuccin-starship",
@ -655,27 +579,10 @@
"hyprland": "hyprland", "hyprland": "hyprland",
"hyprpicker": "hyprpicker", "hyprpicker": "hyprpicker",
"nix-gaming": "nix-gaming", "nix-gaming": "nix-gaming",
"nixpkgs": "nixpkgs_7", "nixpkgs": "nixpkgs_6",
"nur": "nur" "nur": "nur"
} }
}, },
"rust-analyzer-src": {
"flake": false,
"locked": {
"lastModified": 1657557289,
"narHash": "sha256-PRW+nUwuqNTRAEa83SfX+7g+g8nQ+2MMbasQ9nt6+UM=",
"owner": "rust-lang",
"repo": "rust-analyzer",
"rev": "caf23f29144b371035b864a1017dbc32573ad56d",
"type": "github"
},
"original": {
"owner": "rust-lang",
"ref": "nightly",
"repo": "rust-analyzer",
"type": "github"
}
},
"systems": { "systems": {
"locked": { "locked": {
"lastModified": 1689347949, "lastModified": 1689347949,

View file

@ -8,8 +8,6 @@
hypr-contrib.url = "github:hyprwm/contrib"; hypr-contrib.url = "github:hyprwm/contrib";
hyprpicker.url = "github:hyprwm/hyprpicker"; hyprpicker.url = "github:hyprwm/hyprpicker";
alejandra.url = "github:kamadorueda/alejandra/3.0.0";
nix-gaming.url = "github:fufexan/nix-gaming"; nix-gaming.url = "github:fufexan/nix-gaming";
fjordlauncher.url = "github:unmojang/FjordLauncher"; fjordlauncher.url = "github:unmojang/FjordLauncher";

View file

@ -1,32 +1,36 @@
# Do not modify this file! It was generated by nixos-generate-config # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{ {
imports = config,
[ (modulesPath + "/installer/scan/not-detected.nix") lib,
pkgs,
modulesPath,
...
}: {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
]; ];
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "sd_mod" "sdhci_pci" ]; boot.initrd.availableKernelModules = ["xhci_pci" "ahci" "usb_storage" "sd_mod" "sdhci_pci"];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [];
boot.kernelModules = [ "kvm-intel" ]; boot.kernelModules = ["kvm-intel"];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [];
fileSystems."/" = fileSystems."/" = {
{ device = "/dev/disk/by-uuid/5ea79d40-3025-41c3-9a74-0728706f33f7"; device = "/dev/disk/by-uuid/5ea79d40-3025-41c3-9a74-0728706f33f7";
fsType = "ext4"; fsType = "ext4";
}; };
boot.initrd.luks.devices."luks-e7268192-e977-40fe-92d9-c1e2fb65fdc0".device = "/dev/disk/by-uuid/e7268192-e977-40fe-92d9-c1e2fb65fdc0"; boot.initrd.luks.devices."luks-e7268192-e977-40fe-92d9-c1e2fb65fdc0".device = "/dev/disk/by-uuid/e7268192-e977-40fe-92d9-c1e2fb65fdc0";
fileSystems."/boot" = fileSystems."/boot" = {
{ device = "/dev/disk/by-uuid/6F08-F913"; device = "/dev/disk/by-uuid/6F08-F913";
fsType = "vfat"; fsType = "vfat";
}; };
swapDevices = swapDevices = [
[ { device = "/dev/disk/by-uuid/5f19b076-bad1-4201-b13b-f4aa20b48c3a"; } {device = "/dev/disk/by-uuid/5f19b076-bad1-4201-b13b-f4aa20b48c3a";}
]; ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking

View file

@ -17,6 +17,7 @@
++ [(import ./hyprland)] # window manager ++ [(import ./hyprland)] # window manager
++ [(import ./kitty.nix)] # terminal ++ [(import ./kitty.nix)] # terminal
++ [(import ./swaync/swaync.nix)] # notification deamon ++ [(import ./swaync/swaync.nix)] # notification deamon
++ [(import ./nextcloud.nix)] # nextcloud client
++ [(import ./nvim.nix)] # neovim editor ++ [(import ./nvim.nix)] # neovim editor
++ [(import ./packages.nix)] # other packages ++ [(import ./packages.nix)] # other packages
++ [(import ./retroarch.nix)] ++ [(import ./retroarch.nix)]

View file

@ -125,7 +125,8 @@
]; ];
}; };
bind = [ bind =
[
# show keybinds list # show keybinds list
"$mainMod, F1, exec, show-keybinds" "$mainMod, F1, exec, show-keybinds"
@ -145,7 +146,7 @@
"$mainMod, Escape, exec, loginctl lock-session" "$mainMod, Escape, exec, loginctl lock-session"
"$mainMod SHIFT, Escape, exec, shutdown-script" "$mainMod SHIFT, Escape, exec, shutdown-script"
"$mainMod, P, pseudo," "$mainMod, P, pseudo,"
"$mainMod, J, togglesplit," "$mainMod SHIFT, P, togglesplit,"
"$mainMod, E, exec, nemo" "$mainMod, E, exec, nemo"
"$mainMod SHIFT, B, exec, pkill -SIGUSR1 .waybar-wrapped" "$mainMod SHIFT, B, exec, pkill -SIGUSR1 .waybar-wrapped"
"$mainMod, C ,exec, hyprpicker -a" "$mainMod, C ,exec, hyprpicker -a"
@ -154,52 +155,51 @@
# screenshot # screenshot
"$mainMod, Print, exec, screenshot-menu" "$mainMod, Print, exec, screenshot-menu"
",Print, exec, grimblast --notify --cursor --freeze copy area" ",Print, exec, grimblast --notify --cursor --freeze copy area"
]
# switch focus ++ (
"$mainMod, H, movefocus, l" # workspaces
"$mainMod, L, movefocus, r" # binds $mod + [shift +] {1..10} to [move to] workspace {1..10}
"$mainMod, K, movefocus, u" builtins.concatLists (
"$mainMod, J, movefocus, d" builtins.genList (
x: let
# switch workspace ws = let
"$mainMod, 1, workspace, 1" c = (x + 1) / 10;
"$mainMod, 2, workspace, 2" in
"$mainMod, 3, workspace, 3" builtins.toString (x + 1 - (c * 10));
"$mainMod, 4, workspace, 4" in [
"$mainMod, 5, workspace, 5" "$mainMod, ${ws}, workspace, ${toString (x + 1)}"
"$mainMod, 6, workspace, 6" "$mainMod SHIFT, ${ws}, movetoworkspacesilent, ${toString (x + 1)}"
"$mainMod, 7, workspace, 7" ]
"$mainMod, 8, workspace, 8" )
"$mainMod, 9, workspace, 9" 10
"$mainMod, 0, workspace, 10" )
)
# same as above, but switch to the workspace ++ ["$mainMod CTRL, c, movetoworkspace, empty"]
"$mainMod SHIFT, 1, movetoworkspacesilent, 1" # movetoworkspacesilent ++ (
"$mainMod SHIFT, 2, movetoworkspacesilent, 2" # Window focus, movement and control
"$mainMod SHIFT, 3, movetoworkspacesilent, 3" builtins.concatLists (
"$mainMod SHIFT, 4, movetoworkspacesilent, 4" let
"$mainMod SHIFT, 5, movetoworkspacesilent, 5" keys = ["H" "L" "K" "J"];
"$mainMod SHIFT, 6, movetoworkspacesilent, 6" directions = ["l" "r" "u" "d"];
"$mainMod SHIFT, 7, movetoworkspacesilent, 7" resize = toString 80; # Change this to change how much a window resizes each keypress
"$mainMod SHIFT, 8, movetoworkspacesilent, 8" resize_list = ["-${resize} 0" "${resize} 0" "0 -${resize}" "0 ${resize}"];
"$mainMod SHIFT, 9, movetoworkspacesilent, 9" in
"$mainMod SHIFT, 0, movetoworkspacesilent, 10" builtins.genList (
"$mainMod CTRL, c, movetoworkspace, empty" x: let
k = builtins.elemAt keys x;
# window control d = builtins.elemAt directions x;
"$mainMod SHIFT, H, movewindow, l" r = builtins.elemAt resize_list x;
"$mainMod SHIFT, L, movewindow, r" in [
"$mainMod SHIFT, K, movewindow, u" "$mainMod, ${k}, movefocus, ${d}"
"$mainMod SHIFT, J, movewindow, d" "$mainMod SHIFT, ${k}, movewindow, ${d}"
"$mainMod CTRL, H, resizeactive, -80 0" "$mainMod CTRL, ${k}, resizeactive, ${r}"
"$mainMod CTRL, L, resizeactive, 80 0" "$mainMod ALT, ${k}, moveactive, ${r}"
"$mainMod CTRL, K, resizeactive, 0 -80" ]
"$mainMod CTRL, J, resizeactive, 0 80" )
"$mainMod ALT, H, moveactive, -80 0" 4
"$mainMod ALT, L, moveactive, 80 0" )
"$mainMod ALT, K, moveactive, 0 -80" )
"$mainMod ALT, J, moveactive, 0 80" ++ [
# media and volume controls # media and volume controls
",XF86AudioRaiseVolume,exec, pamixer -i 2" ",XF86AudioRaiseVolume,exec, pamixer -i 2"
",XF86AudioLowerVolume,exec, pamixer -d 2" ",XF86AudioLowerVolume,exec, pamixer -d 2"

View file

@ -0,0 +1,6 @@
{...}: {
services.nextcloud-client = {
enable = true;
startInBackground = true;
};
}

View file

@ -61,6 +61,6 @@
wget wget
xdg-utils xdg-utils
xxd xxd
inputs.alejandra.defaultPackage.${system} alejandra
]; ];
} }

View file

@ -9,6 +9,7 @@
opacity = ".85"; opacity = ".85";
cursor = "Numix-Cursor"; cursor = "Numix-Cursor";
}, },
host,
... ...
}: { }: {
programs.waybar.settings.mainBar = { programs.waybar.settings.mainBar = {
@ -28,11 +29,20 @@
modules-center = [ modules-center = [
"hyprland/workspaces" "hyprland/workspaces"
]; ];
modules-right = [ modules-right =
[
"tray" "tray"
]
++ (
if (host == "frues-pc") # Only one with a big-enough screen
then [
"cpu" "cpu"
"memory" "memory"
"disk" "disk"
]
else []
)
++ [
"pulseaudio" "pulseaudio"
"battery" "battery"
"network" "network"
@ -115,7 +125,7 @@
}; };
pulseaudio = { pulseaudio = {
format = "{icon} {volume}%"; format = "{icon} {volume}%";
format-muted = "󰖁 "; format-muted = " ";
format-icons = { format-icons = {
default = [" "]; default = [" "];
}; };