diff --git a/flake.lock b/flake.lock index 37d0c45..929aafb 100755 --- a/flake.lock +++ b/flake.lock @@ -155,6 +155,22 @@ } }, "flake-compat_2": { + "flake": false, + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-compat_3": { "locked": { "lastModified": 1696426674, "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", @@ -168,7 +184,7 @@ "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" } }, - "flake-compat_3": { + "flake-compat_4": { "flake": false, "locked": { "lastModified": 1733328505, @@ -184,7 +200,7 @@ "type": "github" } }, - "flake-compat_4": { + "flake-compat_5": { "flake": false, "locked": { "lastModified": 1696426674, @@ -223,7 +239,25 @@ }, "flake-utils": { "inputs": { - "systems": "systems_3" + "systems": "systems" + }, + "locked": { + "lastModified": 1705309234, + "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_2": { + "inputs": { + "systems": "systems_4" }, "locked": { "lastModified": 1731533236, @@ -239,7 +273,7 @@ "type": "github" } }, - "flake-utils_2": { + "flake-utils_3": { "inputs": { "systems": [ "stylix", @@ -276,6 +310,27 @@ "type": "github" } }, + "ghostty": { + "inputs": { + "flake-compat": "flake-compat", + "nixpkgs-stable": "nixpkgs-stable", + "nixpkgs-unstable": "nixpkgs-unstable", + "zig": "zig" + }, + "locked": { + "lastModified": 1736186781, + "narHash": "sha256-jiKBu/hVN6bKxShMCFS4RHXUQkRfmiuRYZXNc4iAiIc=", + "owner": "ghostty-org", + "repo": "ghostty", + "rev": "037de64ea2c3f6201948236559524986f41a72f7", + "type": "github" + }, + "original": { + "owner": "ghostty-org", + "repo": "ghostty", + "type": "github" + } + }, "git-hooks": { "inputs": { "flake-compat": [ @@ -566,7 +621,7 @@ "hyprwayland-scanner": "hyprwayland-scanner", "nixpkgs": "nixpkgs_3", "pre-commit-hooks": "pre-commit-hooks", - "systems": "systems", + "systems": "systems_2", "xdph": "xdph" }, "locked": { @@ -673,7 +728,7 @@ "hyprutils": "hyprutils_2", "hyprwayland-scanner": "hyprwayland-scanner_2", "nixpkgs": "nixpkgs_4", - "systems": "systems_2" + "systems": "systems_3" }, "locked": { "lastModified": 1735584197, @@ -869,6 +924,38 @@ "type": "github" } }, + "nixpkgs-stable": { + "locked": { + "lastModified": 1733423277, + "narHash": "sha256-TxabjxEgkNbCGFRHgM/b9yZWlBj60gUOUnRT/wbVQR8=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "e36963a147267afc055f7cf65225958633e536bf", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "release-24.11", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-unstable": { + "locked": { + "lastModified": 1733229606, + "narHash": "sha256-FLYY5M0rpa5C2QAE3CKLYAM6TwbKicdRK6qNrSHlNrE=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "566e53c2ad750c84f6d31f9ccb9d00f823165550", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs_2": { "locked": { "lastModified": 1712163089, @@ -952,7 +1039,7 @@ "nixvim": { "inputs": { "devshell": "devshell", - "flake-compat": "flake-compat_2", + "flake-compat": "flake-compat_3", "flake-parts": "flake-parts", "git-hooks": "git-hooks", "home-manager": "home-manager_2", @@ -979,7 +1066,7 @@ }, "nuschtosSearch": { "inputs": { - "flake-utils": "flake-utils", + "flake-utils": "flake-utils_2", "ixx": "ixx", "nixpkgs": [ "nixvim", @@ -1002,7 +1089,7 @@ }, "pre-commit-hooks": { "inputs": { - "flake-compat": "flake-compat", + "flake-compat": "flake-compat_2", "gitignore": "gitignore", "nixpkgs": [ "hyprland", @@ -1026,6 +1113,7 @@ "root": { "inputs": { "disko": "disko", + "ghostty": "ghostty", "home-manager": "home-manager", "hypr-contrib": "hypr-contrib", "hyprland": "hyprland", @@ -1039,7 +1127,7 @@ }, "spicetify-nix": { "inputs": { - "flake-compat": "flake-compat_3", + "flake-compat": "flake-compat_4", "nixpkgs": [ "nixpkgs" ] @@ -1064,13 +1152,13 @@ "base16-fish": "base16-fish", "base16-helix": "base16-helix", "base16-vim": "base16-vim", - "flake-compat": "flake-compat_4", - "flake-utils": "flake-utils_2", + "flake-compat": "flake-compat_5", + "flake-utils": "flake-utils_3", "git-hooks": "git-hooks_2", "gnome-shell": "gnome-shell", "home-manager": "home-manager_3", "nixpkgs": "nixpkgs_6", - "systems": "systems_4", + "systems": "systems_5", "tinted-foot": "tinted-foot", "tinted-kitty": "tinted-kitty", "tinted-tmux": "tinted-tmux", @@ -1092,16 +1180,16 @@ }, "systems": { "locked": { - "lastModified": 1689347949, - "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", "owner": "nix-systems", - "repo": "default-linux", - "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", "type": "github" }, "original": { "owner": "nix-systems", - "repo": "default-linux", + "repo": "default", "type": "github" } }, @@ -1121,6 +1209,21 @@ } }, "systems_3": { + "locked": { + "lastModified": 1689347949, + "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", + "owner": "nix-systems", + "repo": "default-linux", + "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default-linux", + "type": "github" + } + }, + "systems_4": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -1135,7 +1238,7 @@ "type": "github" } }, - "systems_4": { + "systems_5": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -1277,6 +1380,31 @@ "repo": "xdg-desktop-portal-hyprland", "type": "github" } + }, + "zig": { + "inputs": { + "flake-compat": [ + "ghostty" + ], + "flake-utils": "flake-utils", + "nixpkgs": [ + "ghostty", + "nixpkgs-stable" + ] + }, + "locked": { + "lastModified": 1717848532, + "narHash": "sha256-d+xIUvSTreHl8pAmU1fnmkfDTGQYCn2Rb/zOwByxS2M=", + "owner": "mitchellh", + "repo": "zig-overlay", + "rev": "02fc5cc555fc14fda40c42d7c3250efa43812b43", + "type": "github" + }, + "original": { + "owner": "mitchellh", + "repo": "zig-overlay", + "type": "github" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix index 435542a..5e098e3 100755 --- a/flake.nix +++ b/flake.nix @@ -8,6 +8,7 @@ stylix.url = "github:danth/stylix"; disko.url = "github:nix-community/disko"; impermanence.url = "github:nix-community/impermanence"; + ghostty.url = "github:ghostty-org/ghostty"; nixvim = { url = "github:nix-community/nixvim"; @@ -31,7 +32,7 @@ }; }; - outputs = { self, home-manager, disko, nixpkgs, impermanence, nixvim, stylix, ... }@inputs: + outputs = { self, home-manager, ghostty, disko, nixpkgs, impermanence, nixvim, stylix, ... }@inputs: let system = "x86_64-linux"; username = "pagedmov"; diff --git a/hosts/desktop/config.nix b/hosts/desktop/config.nix index 7e611d3..12302b0 100755 --- a/hosts/desktop/config.nix +++ b/hosts/desktop/config.nix @@ -63,7 +63,7 @@ in ${username} = { isNormalUser = true; initialPassword = "1234"; - shell = pkgs.zsh; + shell = pkgs.elvish; extraGroups = [ "input" "wheel" "persist" "libvirtd" ]; }; }; diff --git a/modules/home/environment/hyprland.nix b/modules/home/environment/hyprland.nix index ce1c6f1..db34f68 100755 --- a/modules/home/environment/hyprland.nix +++ b/modules/home/environment/hyprland.nix @@ -190,9 +190,10 @@ in { "super, down, exec, pactl set-sink-volume @default_sink@ -10%" "super, t, exec, swaync-client -t -sw" "super, a, exec, firefox" - "super, q, exec, kitty --title Kitty" - "super shift, q, exec, [float;size 40% 30%;move onscreen cursor -50% -50%] kitty --title Kitty" + "super, q, exec, kitty" + "super shift, q, exec, [float;size 40% 30%;move onscreen cursor -50% -50%] kitty" "super, c, killactive," + "super shift, c,exec, hyprctl kill" "super, e, exec, [float;size 40% 50%;move onscreen cursor -50% -50%] nemo" "super, p, exec, [float;size 40% 25%;move onscreen cursor] [ ! -f /tmp/keyringfile ] && kitty toolbelt" "super shift, m, exit," diff --git a/modules/home/environment/userpkgs.nix b/modules/home/environment/userpkgs.nix index 4a425d0..d8a602e 100755 --- a/modules/home/environment/userpkgs.nix +++ b/modules/home/environment/userpkgs.nix @@ -59,6 +59,9 @@ in { ghostty fd delta + glfw + glxinfo + xwayland ] ++ scripts; }; } diff --git a/modules/home/environment/zsh/aliases.nix b/modules/home/environment/zsh/aliases.nix index abcd31b..c68163e 100644 --- a/modules/home/environment/zsh/aliases.nix +++ b/modules/home/environment/zsh/aliases.nix @@ -22,7 +22,7 @@ svc = "sudo systemctl"; viflake = "nvim flake.nix"; iv = "invoke"; - cfgfilecount = ''find $FLAKEPATH -name "*.nix" | wc -l | toilet -f 3d | lolcat''; + cfgfilecount = ''find ".\.nix" $FLAKEPATH | wc -l | toilet -f 3d | lolcat''; record = "wf-recorder"; #git ga = "playshellsound ${self}/assets/sound/gitadd.wav; git add"; diff --git a/modules/home/environment/zsh/extraconfig.nix b/modules/home/environment/zsh/extraconfig.nix index 3f2896b..756de44 100644 --- a/modules/home/environment/zsh/extraconfig.nix +++ b/modules/home/environment/zsh/extraconfig.nix @@ -42,7 +42,6 @@ in command neovide "$@" } alias vi="nvim" - alias vide="neovide" kitty_theme() { if [ $TERM = "xterm-kitty" ]; then if [ -n "$SSH_CONNECTION" ]; then diff --git a/modules/home/environment/zsh/options.nix b/modules/home/environment/zsh/options.nix index a22d1f2..b4a9006 100644 --- a/modules/home/environment/zsh/options.nix +++ b/modules/home/environment/zsh/options.nix @@ -12,6 +12,10 @@ programs.zsh = { enable = true; + syntaxHighlighting = { + enable = true; + }; + oh-my-zsh = { enable = true; plugins = [ "git" "fzf" ]; diff --git a/modules/home/programs/kitty.nix b/modules/home/programs/kitty.nix index 39d3402..95c715e 100755 --- a/modules/home/programs/kitty.nix +++ b/modules/home/programs/kitty.nix @@ -25,19 +25,15 @@ active_tab_font_style = "normal"; inactive_tab_font_style = "normal"; tab_bar_style = "powerline"; + tab_bar_edge = "top"; tab_powerline_style = "round"; }; keybindings = { - ## Tabs - "alt+1" = "goto_tab 1"; - "alt+2" = "goto_tab 2"; - "alt+3" = "goto_tab 3"; - "alt+4" = "goto_tab 4"; - - ## Unbind - "ctrl+shift+left" = "no_op"; - "ctrl+shift+right" = "no_op"; + "ctrl+shift+h" = "next_tab"; + "ctrl+shift+l" = "previous_tab"; + "ctrl+shift+j" = "scroll_end"; + "ctrl+shift+k" = "scroll_home"; }; }; }; diff --git a/modules/home/programs/nixvim/plugins/lsp.nix b/modules/home/programs/nixvim/plugins/lsp.nix index ba848e1..6596280 100755 --- a/modules/home/programs/nixvim/plugins/lsp.nix +++ b/modules/home/programs/nixvim/plugins/lsp.nix @@ -68,6 +68,7 @@ }; }; }; + jdtls.enable = true; pyright.enable = true; sqls.enable = true; hls = { diff --git a/modules/sys/software/gaming/gaming_pkgs.nix b/modules/sys/software/gaming/gaming_pkgs.nix index ad393b3..1e084fa 100755 --- a/modules/sys/software/gaming/gaming_pkgs.nix +++ b/modules/sys/software/gaming/gaming_pkgs.nix @@ -19,6 +19,7 @@ in { snes9x-gtk cust-openrct2 dwarf-fortress-packages.dwarf-fortress-full + prismlauncher ]; }; } diff --git a/modules/sys/software/packages.nix b/modules/sys/software/packages.nix index d84abeb..7198293 100755 --- a/modules/sys/software/packages.nix +++ b/modules/sys/software/packages.nix @@ -15,6 +15,8 @@ git gcc lldb + zip + unzip hyprland-workspaces hyprpaper hyprpicker