Personal Nix setup
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Add home hyprland config

+95 -31
+3 -4
flake.lock
··· 310 310 ] 311 311 }, 312 312 "locked": { 313 - "lastModified": 1745557122, 314 - "narHash": "sha256-eqSo9ugzsqhFgaDFYUZj943nurlX4L6f+AW0skJ4W+M=", 313 + "lastModified": 1746193516, 314 + "narHash": "sha256-7KqthzbP7LbJpo6DtxlTg2Fqcs7HL1iV1vd1mM8q/u0=", 315 315 "owner": "nix-community", 316 316 "repo": "home-manager", 317 - "rev": "dd26f75fb4ec1c731d4b1396eaf4439ce40a91c1", 317 + "rev": "355a6b937d07a95cb0b753ef513bcaad09128dea", 318 318 "type": "github" 319 319 }, 320 320 "original": { 321 321 "owner": "nix-community", 322 - "ref": "release-24.11", 323 322 "repo": "home-manager", 324 323 "type": "github" 325 324 }
+1 -1
flake.nix
··· 37 37 flake-utils.url = "github:numtide/flake-utils"; 38 38 39 39 home-manager = { 40 - url = "github:nix-community/home-manager/release-24.11"; 40 + url = "github:nix-community/home-manager"; 41 41 inputs.nixpkgs.follows = "nixpkgs"; 42 42 }; 43 43
+1 -1
home/base/shell.nix
··· 55 55 src = pkgs.pure-prompt; 56 56 } 57 57 ]; 58 - initExtra = /*sh*/'' 58 + initContent = /*sh*/'' 59 59 setopt NO_NOMATCH 60 60 stty -ixon -ixoff 61 61 '';
+1
home/default.nix
··· 4 4 imports = [ 5 5 ./base 6 6 ./development 7 + ./desktop 7 8 ./apps 8 9 ]; 9 10 }
+16
home/desktop/default.nix
··· 1 + { lib, ... }: 2 + 3 + with lib; { 4 + options.modules.desktop = { 5 + enable = mkOption { 6 + default = false; 7 + example = true; 8 + description = "Whether to enable Deskop options."; 9 + type = types.bool; 10 + }; 11 + }; 12 + 13 + imports = [ 14 + ./hyprland.nix 15 + ]; 16 + }
+71
home/desktop/hyprland.nix
··· 1 + { lib, config, pkgs, ... }: 2 + 3 + with lib; 4 + let 5 + cfg = config.modules.desktop; 6 + in { 7 + options.modules.desktop.hyprland = { 8 + enable = mkOption { 9 + default = cfg.enable; 10 + example = true; 11 + description = "Whether to enable Hyprland configuration."; 12 + type = types.bool; 13 + }; 14 + }; 15 + 16 + config = mkIf cfg.hyprland.enable { 17 + wayland.windowManager.hyprland = { 18 + enable = true; 19 + systemd.enable = false; 20 + xwayland.enable = true; 21 + settings = { 22 + "$mod" = "SUPER"; 23 + 24 + general = { 25 + gaps_out = 10; 26 + }; 27 + 28 + input = { 29 + kb_options = "ctrl:nocaps"; 30 + touchpad = { 31 + clickfinger_behavior = true; 32 + tap-to-click = false; 33 + tap-and-drag = false; 34 + scroll_factor = 0.2; 35 + }; 36 + }; 37 + 38 + monitor = [ 39 + "eDP-1, preferred, 0x0, 1.6" 40 + "eDP-1, addreserved, 35, 0, 0, 0" 41 + ]; 42 + 43 + debug = { 44 + error_position = 1; 45 + }; 46 + 47 + bind = [ 48 + "$mod, Q, exec, uwsm app -- ghostty" 49 + ]; 50 + }; 51 + }; 52 + 53 + home.pointerCursor = { 54 + gtk.enable = true; 55 + hyprcursor.enable = true; 56 + x11.enable = true; 57 + package = pkgs.apple-cursor; 58 + name = "macOS"; 59 + size = 28; 60 + }; 61 + 62 + xdg.portal = { 63 + enable = true; 64 + xdgOpenUsePortal = true; 65 + extraPortals = with pkgs; [ 66 + xdg-desktop-portal-hyprland 67 + xdg-desktop-portal-gtk 68 + ]; 69 + }; 70 + }; 71 + }
+1 -1
machines/sodacream/configuration.nix
··· 25 25 server = { 26 26 enable = true; 27 27 tailscale.enable = true; 28 - sshd.enable = false; 28 + sshd.enable = true; 29 29 podman.enable = true; 30 30 }; 31 31 };
+1
machines/sodacream/home.nix
··· 1 1 { ... }: { 2 2 modules = { 3 + desktop.enable = true; 3 4 development = { 4 5 enable = true; 5 6 js.enable = true;
-24
modules/desktop/session.nix
··· 18 18 plymouth.enable = true; 19 19 initrd.verbose = mkDefault false; 20 20 consoleLogLevel = 0; 21 - kernelParams = [ "console=tty1" "vt.global_cursor_default=0" ]; 22 21 }; 23 22 24 23 services.greetd = { ··· 33 32 enable = true; 34 33 withUWSM = true; 35 34 xwayland.enable = true; 36 - }; 37 - 38 - environment = { 39 - systemPackages = with pkgs.kdePackages; [ 40 - sddm-kcm 41 - qtmultimedia 42 - pkgs.apple-cursor 43 - ]; 44 - plasma6 = { 45 - excludePackages = with pkgs.kdePackages; [ 46 - discover 47 - ffmpegthumbs 48 - plasma-browser-integration 49 - kate 50 - konsole 51 - krdp 52 - elisa 53 - gwenview 54 - oxygen 55 - oxygen-sounds 56 - khelpcenter 57 - ]; 58 - }; 59 35 }; 60 36 61 37 security = {