diff --git a/flake.lock b/flake.lock index 62db999..d3b1e5d 100644 --- a/flake.lock +++ b/flake.lock @@ -20,6 +20,27 @@ "inputs": { "nixpkgs-lib": "nixpkgs-lib" }, + "locked": { + "lastModified": 1777678872, + "narHash": "sha256-EPIFsulyon7Z1vLQq5Fk64GR8L7cQsT+IPhcsukVbgk=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "5250617bffd85403b14dbf43c3870e7f255d2c16", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_2": { + "inputs": { + "nixpkgs-lib": [ + "nixvim", + "nixpkgs" + ] + }, "locked": { "lastModified": 1775087534, "narHash": "sha256-91qqW8lhL7TLwgQWijoGBbiD4t7/q75KTi8NxjVmSmA=", @@ -34,7 +55,7 @@ "type": "github" } }, - "flake-parts_2": { + "flake-parts_3": { "inputs": { "nixpkgs-lib": [ "nvf", @@ -62,11 +83,11 @@ ] }, "locked": { - "lastModified": 1776697674, - "narHash": "sha256-MljmqqcraHHFrvu9owYv05a7WaY0yww4jcHwvb7Id2Y=", + "lastModified": 1777679572, + "narHash": "sha256-egYNbRrkn+6SwTHinhdb6WUfzzdC3nXfCRqS321VylY=", "owner": "nix-community", "repo": "home-manager", - "rev": "78ceb2dd5c16309c25ce97ecd4687f24e6ab6366", + "rev": "9cb587ade2aa1b4a7257f0238d41072690b0ca4f", "type": "github" }, "original": { @@ -113,11 +134,11 @@ ] }, "locked": { - "lastModified": 1768214250, - "narHash": "sha256-hnBZDQWUxJV3KbtvyGW5BKLO/fAwydrxm5WHCWMQTbw=", + "lastModified": 1776882296, + "narHash": "sha256-DWZozXwMsgvUqfVlL1mQ8dOxW7GJ/8CdyaDN+1niZRg=", "owner": "feel-co", "repo": "ndg", - "rev": "a6bd3c1ce2668d096e4fdaaa03ad7f03ba1fbca8", + "rev": "ab7d78d4884b3a34968cf9fa3d16c0c1246d5c6e", "type": "github" }, "original": { @@ -139,11 +160,11 @@ "xwayland-satellite-unstable": "xwayland-satellite-unstable" }, "locked": { - "lastModified": 1777130270, - "narHash": "sha256-AgOIR3O+hLkTe/spgYjp0knc37iy/A5DqGRY+8DP3LE=", + "lastModified": 1777699141, + "narHash": "sha256-wAeDjnP9IZXb+S0cglXN9ITWF6HVFhruPaoyVLbShVI=", "owner": "sodiboo", "repo": "niri-flake", - "rev": "e43ef13f23c2c7ae5b10e842745cb345faff4f40", + "rev": "8dbf91d91d0e9be3aa0fe2a9fc364a6f7ad053a8", "type": "github" }, "original": { @@ -172,11 +193,11 @@ "niri-unstable": { "flake": false, "locked": { - "lastModified": 1777115961, - "narHash": "sha256-ehSMsSpE+0k8r+2Vseu8kangsYxToZv3vinynsDp9zs=", + "lastModified": 1777627080, + "narHash": "sha256-9xzxgWsZZRbiMDa6iSZfD1dZGlUvsHp2aawWM5LK6F8=", "owner": "YaLTeR", "repo": "niri", - "rev": "8ed0da44d974c32c6877d2f4630c314da0717ecb", + "rev": "5f6f131b24826a01374d5cd87b281bd7ea181537", "type": "github" }, "original": { @@ -187,11 +208,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1776169885, - "narHash": "sha256-l/iNYDZ4bGOAFQY2q8y5OAfBBtrDAaPuRQqWaFHVRXM=", + "lastModified": 1777578337, + "narHash": "sha256-Ad49moKWeXtKBJNy2ebiTQUEgdLyvGmTeykAQ9xM+Z4=", "owner": "nixos", "repo": "nixpkgs", - "rev": "4bd9165a9165d7b5e33ae57f3eecbcb28fb231c9", + "rev": "15f4ee454b1dce334612fa6843b3e05cf546efab", "type": "github" }, "original": { @@ -203,11 +224,11 @@ }, "nixpkgs-lib": { "locked": { - "lastModified": 1774748309, - "narHash": "sha256-+U7gF3qxzwD5TZuANzZPeJTZRHS29OFQgkQ2kiTJBIQ=", + "lastModified": 1777168982, + "narHash": "sha256-GOkGPcboWE9BmGCRMLX3worL4EMnsnG8MyKmXNeYuhQ=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "333c4e0545a6da976206c74db8773a1645b5870a", + "rev": "f5901329dade4a6ea039af1433fb087bd9c1fe14", "type": "github" }, "original": { @@ -218,11 +239,11 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1776734388, - "narHash": "sha256-vl3dkhlE5gzsItuHoEMVe+DlonsK+0836LIRDnm6MXQ=", + "lastModified": 1777428379, + "narHash": "sha256-ypxFOeDz+CqADEQNL72haqGjvZQdBR5Vc7pyx2JDttI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "10e7ad5bbcb421fe07e3a4ad53a634b0cd57ffac", + "rev": "755f5aa91337890c432639c60b6064bb7fe67769", "type": "github" }, "original": { @@ -232,6 +253,28 @@ "type": "github" } }, + "nixvim": { + "inputs": { + "flake-parts": "flake-parts_2", + "nixpkgs": [ + "nixpkgs" + ], + "systems": "systems" + }, + "locked": { + "lastModified": 1777236345, + "narHash": "sha256-ALOqlq7bE30lsX4rA76hXeQ2aLLEpb44hS+D1+jWS88=", + "owner": "nix-community", + "repo": "nixvim", + "rev": "a67d9cd6ff725a763afe88727aac73208ded3bf4", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixvim", + "type": "github" + } + }, "noctalia": { "inputs": { "nixpkgs": [ @@ -259,7 +302,7 @@ "noctalia", "nixpkgs" ], - "systems": "systems", + "systems": "systems_2", "treefmt-nix": "treefmt-nix" }, "locked": { @@ -279,20 +322,20 @@ "nvf": { "inputs": { "flake-compat": "flake-compat", - "flake-parts": "flake-parts_2", + "flake-parts": "flake-parts_3", "mnw": "mnw", "ndg": "ndg", "nixpkgs": [ "nixpkgs" ], - "systems": "systems_2" + "systems": "systems_3" }, "locked": { - "lastModified": 1776695587, - "narHash": "sha256-XXn/vKRCiwCkAzXvOxNyLE0mRDfFa0axQDJYMikaGY8=", + "lastModified": 1777478067, + "narHash": "sha256-2vZnUuv8fg2sIE6pXgGxZQQ3ZhQW1XE7Sxieg8gK2p4=", "owner": "NotAShelf", "repo": "nvf", - "rev": "4de19e12094a30d3cd205822536e0c3c57cba66c", + "rev": "13c4ad4b4bb926c22945e2fb8862769fe51f27f1", "type": "github" }, "original": { @@ -308,12 +351,28 @@ "import-tree": "import-tree", "niri-flake": "niri-flake", "nixpkgs": "nixpkgs", + "nixvim": "nixvim", "noctalia": "noctalia", "nvf": "nvf", "zen-browser": "zen-browser" } }, "systems": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "systems_2": { "locked": { "lastModified": 1689347949, "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", @@ -328,7 +387,7 @@ "type": "github" } }, - "systems_2": { + "systems_3": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -405,11 +464,11 @@ ] }, "locked": { - "lastModified": 1775710180, - "narHash": "sha256-sCokvdNvl8zIzsnjgG0TN5h3RUI7GJyWW9ErfmEj0rM=", + "lastModified": 1777612697, + "narHash": "sha256-h+tXBNMDrsKbD1UnYw0IeSIT4RalHtIJ1GLOviib7/8=", "owner": "youwen5", "repo": "zen-browser-flake", - "rev": "2c138beb648d1cbbfae76695a8230ee04e4db25a", + "rev": "f9f70d14f9a57c7962c5cfe589461c1391044448", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index e951c7d..27db4a0 100644 --- a/flake.nix +++ b/flake.nix @@ -5,6 +5,11 @@ import-tree.url = "github:vic/import-tree"; # nix-wrapper-modules.url = "github:BirdeeHub/nix-wrapper-modules"; + nixvim = { + url = "github:nix-community/nixvim"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + niri-flake = { url = "github:sodiboo/niri-flake"; inputs.nixpkgs.follows = "nixpkgs"; diff --git a/modules/programs/gamedev.nix b/modules/programs/gamedev.nix index 77888e1..8b35a80 100644 --- a/modules/programs/gamedev.nix +++ b/modules/programs/gamedev.nix @@ -2,14 +2,14 @@ { flake.nixosModules.gamedev = { pkgs, ... }: { imports = [ - self.nixosModules.neovim + self.nixosModules.nvf self.nixosModules.tmux self.nixosModules.git ]; environment.systemPackages = with pkgs; [ # aseprite - (pkgs.bottles.override {removeWarningPopup = true; }) + # (pkgs.bottles.override {removeWarningPopup = true; }) audacity dotnet-sdk godot-mono diff --git a/modules/programs/neovim.nix b/modules/programs/neovim.nix index ef9148c..3fdafd7 100644 --- a/modules/programs/neovim.nix +++ b/modules/programs/neovim.nix @@ -1,148 +1,22 @@ -{ self, inputs, ... }: +{ self, ... }: { - flake.nixosModules.neovim = { - home-manager.users.${self.user}.imports = [ - { - imports = [ inputs.nvf.homeManagerModules.default ]; - - home.sessionVariables = { - MANPAGER = "nvim +Man!"; - }; - - programs.neovim = { - enable = true; - defaultEditor = true; - }; - - programs.nvf = { - enable = true; - settings = { - vim = { - luaConfigPost = /* lua */ '' - vim.opt.shiftwidth = 2 - -- vim.opt.colorcolumn = "80" - ''; - treesitter.indent.enable = false; - - lsp = { - enable = true; - lspconfig.enable = true; - mappings.format = ""; - }; - - languages = { - enableFormat = true; - enableTreesitter = true; - - nix.enable = true; - markdown.enable = true; - bash.enable = true; - lua.enable = true; - css.enable = true; - - csharp = { - enable = true; - lsp = { - enable = true; - servers = [ "roslyn_ls" ]; - }; - treesitter.enable = true; - }; - }; - - visuals = { - nvim-cursorline.enable = true; - }; - - theme = { - enable = true; - name = "gruvbox"; - style = "dark"; - }; - - statusline = { - lualine.enable = true; - }; - - autopairs = { - nvim-autopairs.enable = true; - }; - - autocomplete = { - nvim-cmp.enable = true; - }; - - filetree = { - neo-tree.enable = true; - }; - - tabline = { - nvimBufferline = { - enable = true; - mappings = { - closeCurrent = "x"; - cycleNext = ""; - cyclePrevious = ""; - moveNext = "l"; - movePrevious = "h"; - }; - }; - }; - - telescope.enable = true; - - git = { - enable = true; - }; - - utility = { - ccc.enable = true; - }; - - notes = { - todo-comments.enable = true; - }; - - ui = { - fastaction.enable = true; # Not so sure about it. - }; - - keymaps = [ - { - mode = [ - "n" - "v" - "i" - ]; - key = ""; - action = "Neotree toggle left"; - } - - { - mode = "n"; - key = ""; - action = "h"; - } - { - mode = "n"; - key = ""; - action = "j"; - } - { - mode = "n"; - key = ""; - action = "k"; - } - { - mode = "n"; - key = ""; - action = "l"; - } - ]; - }; - }; - }; - } - ]; - }; + # flakes.nixosModules.neovim = { + # home-manager.users.${self.user} = { inputs, ... }: { + # imports = [ inputs.nixvim.homeModules.nixvim ]; + # + # home.sessionVariables = { + # MANPAGER = "nvim +Man!"; + # }; + # + # programs.nixvim = { + # opts = { + # number = true; + # relativenumber = true; + # shiftwidth = 2; + # }; + # enable = true; + # colorschemes.gruvbox.enable = true; + # }; + # }; + # }; } diff --git a/modules/programs/nvf.nix b/modules/programs/nvf.nix new file mode 100644 index 0000000..58e064c --- /dev/null +++ b/modules/programs/nvf.nix @@ -0,0 +1,148 @@ +{ self, inputs, ... }: +{ + flake.nixosModules.nvf = { + home-manager.users.${self.user}.imports = [ + { + imports = [ inputs.nvf.homeManagerModules.default ]; + + home.sessionVariables = { + MANPAGER = "nvim +Man!"; + }; + + programs.neovim = { + enable = true; + defaultEditor = true; + }; + + programs.nvf = { + enable = true; + settings = { + vim = { + luaConfigPost = /* lua */ '' + vim.opt.shiftwidth = 2 + -- vim.opt.colorcolumn = "80" + ''; + treesitter.indent.enable = false; + + lsp = { + enable = true; + lspconfig.enable = true; + mappings.format = ""; + }; + + languages = { + enableFormat = true; + enableTreesitter = true; + + nix.enable = true; + markdown.enable = true; + bash.enable = true; + lua.enable = true; + css.enable = true; + + csharp = { + enable = true; + lsp = { + enable = true; + servers = [ "roslyn-ls" ]; + }; + treesitter.enable = true; + }; + }; + + visuals = { + nvim-cursorline.enable = true; + }; + + theme = { + enable = true; + name = "gruvbox"; + style = "dark"; + }; + + statusline = { + lualine.enable = true; + }; + + autopairs = { + nvim-autopairs.enable = true; + }; + + autocomplete = { + nvim-cmp.enable = true; + }; + + filetree = { + neo-tree.enable = true; + }; + + tabline = { + nvimBufferline = { + enable = true; + mappings = { + closeCurrent = "x"; + cycleNext = ""; + cyclePrevious = ""; + moveNext = "l"; + movePrevious = "h"; + }; + }; + }; + + telescope.enable = true; + + git = { + enable = true; + }; + + utility = { + ccc.enable = true; + }; + + notes = { + todo-comments.enable = true; + }; + + ui = { + fastaction.enable = true; # Not so sure about it. + }; + + keymaps = [ + { + mode = [ + "n" + "v" + "i" + ]; + key = ""; + action = "Neotree toggle left"; + } + + { + mode = "n"; + key = ""; + action = "h"; + } + { + mode = "n"; + key = ""; + action = "j"; + } + { + mode = "n"; + key = ""; + action = "k"; + } + { + mode = "n"; + key = ""; + action = "l"; + } + ]; + }; + }; + }; + } + ]; + }; +} diff --git a/modules/sessions/niri/niri.nix b/modules/sessions/niri/niri.nix index 26251a2..676d59f 100644 --- a/modules/sessions/niri/niri.nix +++ b/modules/sessions/niri/niri.nix @@ -1,4 +1,4 @@ -{ self, inputs, ... }: +{ self, ... }: { flake.nixosModules.niri = { pkgs, lib, config, ... }: { @@ -7,15 +7,10 @@ # self.nixosModules.waybar self.nixosModules.noctalia ]; - - nixpkgs.overlays = [ inputs.niri-flake.overlays.niri ]; kitty.wal.enable = true; - programs.niri = { - enable = true; - package = pkgs.niri-unstable; - }; + programs.niri.enable = true; services.displayManager.ly = let diff --git a/modules/sessions/niri/noctalia.nix b/modules/sessions/niri/noctalia.nix index c4fcc82..7a18392 100644 --- a/modules/sessions/niri/noctalia.nix +++ b/modules/sessions/niri/noctalia.nix @@ -206,7 +206,7 @@ forceBlackScreenCorners = false; scaleRatio = 1; radiusRatio = 1; - iRadiusRatio = 1.23; + iRadiusRatio = 1; boxRadiusRatio = 1; screenRadiusRatio = 1; animationSpeed = 1;