nixvim time!

This commit is contained in:
Charlie Root 2024-05-21 22:30:34 +02:00
commit d19d367cb3
10 changed files with 320 additions and 30 deletions

292
flake.lock generated
View file

@ -200,6 +200,28 @@
"type": "github" "type": "github"
} }
}, },
"devshell": {
"inputs": {
"flake-utils": "flake-utils_4",
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1713532798,
"narHash": "sha256-wtBhsdMJA3Wa32Wtm1eeo84GejtI43pMrFrmwLXrsEc=",
"owner": "numtide",
"repo": "devshell",
"rev": "12e914740a25ea1891ec619bb53cf5e6ca922e40",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "devshell",
"type": "github"
}
},
"doom-emacs-config": { "doom-emacs-config": {
"flake": false, "flake": false,
"locked": { "locked": {
@ -305,6 +327,20 @@
} }
}, },
"flake-compat_3": { "flake-compat_3": {
"locked": {
"lastModified": 1696426674,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"revCount": 57,
"type": "tarball",
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
}
},
"flake-compat_4": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1696426674, "lastModified": 1696426674,
@ -320,7 +356,23 @@
"type": "github" "type": "github"
} }
}, },
"flake-compat_4": { "flake-compat_5": {
"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_6": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1673956053, "lastModified": 1673956053,
@ -336,7 +388,7 @@
"type": "github" "type": "github"
} }
}, },
"flake-compat_5": { "flake-compat_7": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1696426674, "lastModified": 1696426674,
@ -459,6 +511,27 @@
} }
}, },
"flake-parts_6": { "flake-parts_6": {
"inputs": {
"nixpkgs-lib": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1715865404,
"narHash": "sha256-/GJvTdTpuDjNn84j82cU6bXztE0MSkdnTWClUCRub78=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "8dc45382d5206bd292f9c2768b8058a8fd8311d9",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-parts_7": {
"inputs": { "inputs": {
"nixpkgs-lib": [ "nixpkgs-lib": [
"schizofox", "schizofox",
@ -479,7 +552,7 @@
"type": "github" "type": "github"
} }
}, },
"flake-parts_7": { "flake-parts_8": {
"inputs": { "inputs": {
"nixpkgs-lib": "nixpkgs-lib_2" "nixpkgs-lib": "nixpkgs-lib_2"
}, },
@ -497,6 +570,21 @@
"type": "github" "type": "github"
} }
}, },
"flake-root": {
"locked": {
"lastModified": 1713493429,
"narHash": "sha256-ztz8JQkI08tjKnsTpfLqzWoKFQF4JGu2LRz8bkdnYUk=",
"owner": "srid",
"repo": "flake-root",
"rev": "bc748b93b86ee76e2032eecda33440ceb2532fcd",
"type": "github"
},
"original": {
"owner": "srid",
"repo": "flake-root",
"type": "github"
}
},
"flake-utils": { "flake-utils": {
"inputs": { "inputs": {
"systems": "systems_2" "systems": "systems_2"
@ -553,7 +641,25 @@
}, },
"flake-utils_4": { "flake-utils_4": {
"inputs": { "inputs": {
"systems": "systems_7" "systems": "systems_6"
},
"locked": {
"lastModified": 1701680307,
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_5": {
"inputs": {
"systems": "systems_8"
}, },
"locked": { "locked": {
"lastModified": 1685518550, "lastModified": 1685518550,
@ -585,6 +691,28 @@
"type": "github" "type": "github"
} }
}, },
"gitignore": {
"inputs": {
"nixpkgs": [
"nixvim",
"pre-commit-hooks",
"nixpkgs"
]
},
"locked": {
"lastModified": 1709087332,
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
"owner": "hercules-ci",
"repo": "gitignore.nix",
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "gitignore.nix",
"type": "github"
}
},
"gnome-shell": { "gnome-shell": {
"flake": false, "flake": false,
"locked": { "locked": {
@ -691,6 +819,27 @@
} }
}, },
"home-manager_3": { "home-manager_3": {
"inputs": {
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1715930644,
"narHash": "sha256-W9pyM3/vePxrffHtzlJI6lDS3seANQ+Nqp+i58O46LI=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "e3ad5108f54177e6520535768ddbf1e6af54b59d",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"home-manager_4": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"schizofox", "schizofox",
@ -711,7 +860,7 @@
"type": "github" "type": "github"
} }
}, },
"home-manager_4": { "home-manager_5": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"stylix", "stylix",
@ -953,6 +1102,27 @@
"type": "github" "type": "github"
} }
}, },
"nix-darwin": {
"inputs": {
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1715901937,
"narHash": "sha256-eMyvWP56ZOdraC2IOvZo0/RTDcrrsqJ0oJWDC76JTak=",
"owner": "lnl7",
"repo": "nix-darwin",
"rev": "ffc01182f90118119930bdfc528c1ee9a39ecef8",
"type": "github"
},
"original": {
"owner": "lnl7",
"repo": "nix-darwin",
"type": "github"
}
},
"nix-eval-jobs": { "nix-eval-jobs": {
"inputs": { "inputs": {
"flake-parts": "flake-parts_5", "flake-parts": "flake-parts_5",
@ -1263,6 +1433,34 @@
"type": "github" "type": "github"
} }
}, },
"nixvim": {
"inputs": {
"devshell": "devshell",
"flake-compat": "flake-compat_3",
"flake-parts": "flake-parts_6",
"flake-root": "flake-root",
"home-manager": "home-manager_3",
"nix-darwin": "nix-darwin",
"nixpkgs": [
"nixpkgs"
],
"pre-commit-hooks": "pre-commit-hooks",
"treefmt-nix": "treefmt-nix_2"
},
"locked": {
"lastModified": 1716294469,
"narHash": "sha256-1RdJkVa+axdzLhbeoWJoC3BPODxfx+/Rv7HE+e4CK/Y=",
"owner": "nix-community",
"repo": "nixvim",
"rev": "1c9f2a23a6cb9406c35980f4af1a4356f56771e9",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixvim",
"type": "github"
}
},
"nur": { "nur": {
"locked": { "locked": {
"lastModified": 1716316781, "lastModified": 1716316781,
@ -1278,6 +1476,33 @@
"type": "github" "type": "github"
} }
}, },
"pre-commit-hooks": {
"inputs": {
"flake-compat": "flake-compat_4",
"gitignore": "gitignore",
"nixpkgs": [
"nixvim",
"nixpkgs"
],
"nixpkgs-stable": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1715870890,
"narHash": "sha256-nacSOeXtUEM77Gn0G4bTdEOeFIrkCBXiyyFZtdGwuH0=",
"owner": "cachix",
"repo": "pre-commit-hooks.nix",
"rev": "fa606cccd7b0ccebe2880051208e4a0f61bfc8c1",
"type": "github"
},
"original": {
"owner": "cachix",
"repo": "pre-commit-hooks.nix",
"type": "github"
}
},
"root": { "root": {
"inputs": { "inputs": {
"agenix": "agenix", "agenix": "agenix",
@ -1293,6 +1518,7 @@
"nixpak": "nixpak", "nixpak": "nixpak",
"nixpkgs": "nixpkgs_5", "nixpkgs": "nixpkgs_5",
"nixpkgs-wayland": "nixpkgs-wayland", "nixpkgs-wayland": "nixpkgs-wayland",
"nixvim": "nixvim",
"nur": "nur", "nur": "nur",
"schizofox": "schizofox", "schizofox": "schizofox",
"spicetify-nix": "spicetify-nix", "spicetify-nix": "spicetify-nix",
@ -1320,9 +1546,9 @@
}, },
"schizofox": { "schizofox": {
"inputs": { "inputs": {
"flake-compat": "flake-compat_3", "flake-compat": "flake-compat_5",
"flake-parts": "flake-parts_6", "flake-parts": "flake-parts_7",
"home-manager": "home-manager_3", "home-manager": "home-manager_4",
"nixpak": [ "nixpak": [
"nixpak" "nixpak"
], ],
@ -1330,7 +1556,7 @@
"nixpkgs" "nixpkgs"
], ],
"searx-randomizer": "searx-randomizer", "searx-randomizer": "searx-randomizer",
"systems": "systems_6" "systems": "systems_7"
}, },
"locked": { "locked": {
"lastModified": 1714677453, "lastModified": 1714677453,
@ -1349,7 +1575,7 @@
"searx-randomizer": { "searx-randomizer": {
"inputs": { "inputs": {
"crane": "crane", "crane": "crane",
"flake-parts": "flake-parts_7", "flake-parts": "flake-parts_8",
"nixpkgs": [ "nixpkgs": [
"schizofox", "schizofox",
"nixpkgs" "nixpkgs"
@ -1371,7 +1597,7 @@
}, },
"spicetify-nix": { "spicetify-nix": {
"inputs": { "inputs": {
"flake-utils": "flake-utils_4", "flake-utils": "flake-utils_5",
"nixpkgs": "nixpkgs_8" "nixpkgs": "nixpkgs_8"
}, },
"locked": { "locked": {
@ -1418,9 +1644,9 @@
"base16-kitty": "base16-kitty", "base16-kitty": "base16-kitty",
"base16-tmux": "base16-tmux", "base16-tmux": "base16-tmux",
"base16-vim": "base16-vim", "base16-vim": "base16-vim",
"flake-compat": "flake-compat_4", "flake-compat": "flake-compat_6",
"gnome-shell": "gnome-shell", "gnome-shell": "gnome-shell",
"home-manager": "home-manager_4", "home-manager": "home-manager_5",
"nixpkgs": "nixpkgs_9" "nixpkgs": "nixpkgs_9"
}, },
"locked": { "locked": {
@ -1513,6 +1739,21 @@
} }
}, },
"systems_6": { "systems_6": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_7": {
"locked": { "locked": {
"lastModified": 1689347949, "lastModified": 1689347949,
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
@ -1527,7 +1768,7 @@
"type": "github" "type": "github"
} }
}, },
"systems_7": { "systems_8": {
"locked": { "locked": {
"lastModified": 1681028828, "lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
@ -1564,9 +1805,30 @@
"type": "github" "type": "github"
} }
}, },
"treefmt-nix_2": {
"inputs": {
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1715940852,
"narHash": "sha256-wJqHMg/K6X3JGAE9YLM0LsuKrKb4XiBeVaoeMNlReZg=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "2fba33a182602b9d49f0b2440513e5ee091d838b",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "treefmt-nix",
"type": "github"
}
},
"waybar": { "waybar": {
"inputs": { "inputs": {
"flake-compat": "flake-compat_5", "flake-compat": "flake-compat_7",
"nixpkgs": "nixpkgs_10" "nixpkgs": "nixpkgs_10"
}, },
"locked": { "locked": {

View file

@ -50,7 +50,10 @@
}; };
spicetify-nix.url = "github:the-argus/spicetify-nix"; spicetify-nix.url = "github:the-argus/spicetify-nix";
nur = { url = "github:nix-community/NUR"; }; nur = { url = "github:nix-community/NUR"; };
nixvim = {
url = "github:nix-community/nixvim";
inputs.nixpkgs.follows = "nixpkgs";
};
agenix.url = "github:ryantm/agenix"; agenix.url = "github:ryantm/agenix";
neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay"; neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay";

View file

@ -68,6 +68,7 @@
}; };
helix.enable = true; helix.enable = true;
kakoune.enable = true; kakoune.enable = true;
nixvim.enable = true;
}; };
services = { services = {
pipewire.enable = true; pipewire.enable = true;

View file

@ -107,6 +107,7 @@ in {
winetricks winetricks
wireguard-tools wireguard-tools
wl-clipboard wl-clipboard
xdg-utils
xournalpp xournalpp
yt-dlp yt-dlp
zapzap zapzap

View file

@ -0,0 +1,14 @@
{pkgs, config, lib, ...}:
with lib;
let
cfg = config.modules.editors.nixvim;
inherit (inputs.nixvim.packges.${pkgs.system}) nixvim;
in {
options.modules.editors.nivim.enable = mkEnableOption "nixvim";
config = mkIf cfg.enable {
programs.nixvim = {
enable = true;
};
};
}

View file

@ -66,7 +66,7 @@ in {
}; };
cursor = { cursor = {
style = "beam"; style = "beam";
blink = "no"; blink = "true";
}; };
mouse = { mouse = {
hide-when-typing = "yes"; hide-when-typing = "yes";

View file

@ -14,11 +14,17 @@ in {
programs.schizofox = { programs.schizofox = {
enable = true; enable = true;
theme = { theme = {
# colors = {
# background-darker = "181825";
# background = "1e1e2e";
# foreground = "cdd6f4";
# };
colors = { colors = {
background-darker = "181825"; background-darker = "1d2021";
background = "1e1e2e"; background = "282828";
foreground = "cdd6f4"; foreground = "ebdbb2";
}; };
font = "Lexend"; font = "Lexend";
extraUserChrome = '' extraUserChrome = ''
body { body {

View file

@ -13,7 +13,7 @@ in {
programs.spicetify = { programs.spicetify = {
enable = true; enable = true;
spotifyPackage = pkgs.spotify; spotifyPackage = pkgs.spotify;
theme = spicePkgs.themes.catppuccin; theme = spicePkgs.themes.Onepunch;
colorScheme = "mocha"; colorScheme = "mocha";
enabledExtensions = with spicePkgs.extensions; [ enabledExtensions = with spicePkgs.extensions; [
shuffle shuffle

View file

@ -12,7 +12,8 @@ in {
polarity = "dark"; polarity = "dark";
image = ../../assets/wallpapers/mafu_trad_wall.png; image = ../../assets/wallpapers/mafu_trad_wall.png;
base16Scheme = base16Scheme =
"${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml"; #"${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml";
"${pkgs.base16-schemes}/share/themes/gruvbox-dark-pale.yaml";
autoEnable = true; autoEnable = true;
targets = { targets = {
btop.enable = true; btop.enable = true;
@ -73,7 +74,8 @@ in {
polarity = "dark"; polarity = "dark";
targets.plymouth.enable = false; targets.plymouth.enable = false;
base16Scheme = base16Scheme =
"${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml"; #"${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml";
"${pkgs.base16-schemes}/share/themes/gruvbox-dark-pale.yaml";
}; };
}; };
} }

View file

@ -6,7 +6,7 @@ let
inherit (inputs.hyprland.packages.${pkgs.system}) hyprland; inherit (inputs.hyprland.packages.${pkgs.system}) hyprland;
inherit (inputs.anyrun.packages.${pkgs.system}) anyrun; inherit (inputs.anyrun.packages.${pkgs.system}) anyrun;
inherit (inputs.nixpkgs-wayland.packages.${pkgs.system}) inherit (inputs.nixpkgs-wayland.packages.${pkgs.system})
wl-clipboard swww wlsunset; foot wl-clipboard swww wlsunset;
inherit (inputs.waybar.packages.${pkgs.system}) waybar; inherit (inputs.waybar.packages.${pkgs.system}) waybar;
inherit (inputs.split-monitor-workspaces.packages.${pkgs.system}) inherit (inputs.split-monitor-workspaces.packages.${pkgs.system})
split-monitor-workspaces; split-monitor-workspaces;
@ -148,7 +148,7 @@ in {
misc = { misc = {
enable_swallow = true; enable_swallow = true;
swallow_regex = "kitty"; swallow_regex = "foot";
focus_on_activate = true; focus_on_activate = true;
vrr = 1; vrr = 1;
vfr = true; vfr = true;
@ -172,7 +172,7 @@ in {
]; ];
# Keybinds # Keybinds
bind = [ bind = [
"$mainMod, RETURN, exec, ${pkgs.kitty}/bin/kitty -d ~" "$mainMod, RETURN, exec, ${foot}/bin/foot -D ~"
"$mainMod, Q, killactive" "$mainMod, Q, killactive"
"$mainMod, F, fullscreen, 0" "$mainMod, F, fullscreen, 0"
"$mainMod, D, exec, ${pkgs.procps}/bin/pkill anyrun || ${anyrun}/bin/anyrun" "$mainMod, D, exec, ${pkgs.procps}/bin/pkill anyrun || ${anyrun}/bin/anyrun"
@ -263,7 +263,8 @@ in {
# "${waybar}/bin/waybar" # "${waybar}/bin/waybar"
# run persistent special workspace windows # run persistent special workspace windows
"[workspace special:nixos; silent;tile] ${pkgs.bash}/bin/bash cd ~/repos/nichts && emacsclient -c" "[workspace special:nixos; silent;tile] ${foot}/bin/foot -D ~/repos/nichts nvim"
"[workspace special:keepassxc; silent;tile] ${pkgs.keepassxc}/bin/keepassxc" "[workspace special:keepassxc; silent;tile] ${pkgs.keepassxc}/bin/keepassxc"
"${swww}/bin/swww-daemon" "${swww}/bin/swww-daemon"
@ -275,9 +276,9 @@ in {
"${pkgs.procps}/bin/pkill btop" "${pkgs.procps}/bin/pkill btop"
"${pkgs.procps}/bin/pkill pavucontrol" "${pkgs.procps}/bin/pkill pavucontrol"
# and run it all again # and run it all again
"[workspace special:btop;silent;tile] ${pkgs.kitty}/bin/kitty -e ${pkgs.btop}/bin/btop" "[workspace special:btop;silent;tile] ${foot}/bin/foot ${pkgs.btop}/bin/btop"
# "[workspace special:pipewire silent;tile] ${pkgs.helvum}/bin/helvum" "[workspace special:pipewire silent;tile] ${pkgs.helvum}/bin/helvum"
"[workspace special:pipewire;silent;tile] ${pkgs.pavucontrol}/bin/pavucontrol" "[workspace special:pipewire;silent;tile] ${pkgs.pavucontrol}/bin/pavucontrol"
# "${pkgs.networkmanagerapplet}/bin/nm-applet --indicator" # "${pkgs.networkmanagerapplet}/bin/nm-applet --indicator"
]; ];
@ -291,7 +292,7 @@ in {
}; };
}; };
}; };
environment.systemPackages = with pkgs; [ mako libnotify ]; environment.systemPackages = with pkgs; [ libnotify ];
}; };
} }