[feat] flake: prepare for 24.05
We add an `unstable` overlay (available through `pkgs.unstable`) and pin nixpkgs to the `nixos-24.05` branch. Neovim is still kept in unstable (I want to live in the bleeding edge c:).
This commit is contained in:
parent
3d703f40df
commit
1da87b1153
5 changed files with 55 additions and 38 deletions
41
flake.lock
41
flake.lock
|
@ -349,15 +349,16 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717097707,
|
"lastModified": 1716736833,
|
||||||
"narHash": "sha256-HC5vJ3oYsjwsCaSbkIPv80e4ebJpNvFKQTBOGlHvjLs=",
|
"narHash": "sha256-rNObca6dm7Qs524O4st8VJH6pZ/Xe1gxl+Rx6mcWYo0=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "0eb314b4f0ba337e88123e0b1e57ef58346aafd9",
|
"rev": "a631666f5ec18271e86a5cde998cba68c33d9ac6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
|
"ref": "release-24.05",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
@ -438,16 +439,16 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1716948383,
|
"lastModified": 1717144377,
|
||||||
"narHash": "sha256-SzDKxseEcHR5KzPXLwsemyTR/kaM9whxeiJohbL04rs=",
|
"narHash": "sha256-F/TKWETwB5RaR8owkPPi+SPJh83AQsm6KrQAlJ8v/uA=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "ad57eef4ef0659193044870c731987a6df5cf56b",
|
"rev": "805a384895c696f802a9bf5bf4720f37385df547",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"id": "nixpkgs",
|
"id": "nixpkgs",
|
||||||
"ref": "nixos-unstable",
|
"ref": "nixos-24.05",
|
||||||
"type": "indirect"
|
"type": "indirect"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -468,7 +469,7 @@
|
||||||
],
|
],
|
||||||
"nix-darwin": [],
|
"nix-darwin": [],
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"unstable"
|
||||||
],
|
],
|
||||||
"treefmt-nix": "treefmt-nix"
|
"treefmt-nix": "treefmt-nix"
|
||||||
},
|
},
|
||||||
|
@ -499,7 +500,8 @@
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
"nixvim": "nixvim",
|
"nixvim": "nixvim",
|
||||||
"stylix": "stylix",
|
"stylix": "stylix",
|
||||||
"systems": "systems"
|
"systems": "systems",
|
||||||
|
"unstable": "unstable"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"stylix": {
|
"stylix": {
|
||||||
|
@ -521,11 +523,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1716800695,
|
"lastModified": 1717250350,
|
||||||
"narHash": "sha256-5ZHVsIg5akOIWImypmQMX/fXZZf3/7tzqJICLteFGZc=",
|
"narHash": "sha256-l7y55WbUrj4NVCzgo3GLmM1Z2HC2uLb8dLUt7FxfI5g=",
|
||||||
"owner": "jalil-salame",
|
"owner": "jalil-salame",
|
||||||
"repo": "stylix",
|
"repo": "stylix",
|
||||||
"rev": "036128f2517b1ff7d33d04773f48ea98d680128f",
|
"rev": "03a8c7744903f29f017fabeda833834bd873f956",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -570,6 +572,21 @@
|
||||||
"repo": "treefmt-nix",
|
"repo": "treefmt-nix",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"unstable": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1716948383,
|
||||||
|
"narHash": "sha256-SzDKxseEcHR5KzPXLwsemyTR/kaM9whxeiJohbL04rs=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "ad57eef4ef0659193044870c731987a6df5cf56b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"id": "nixpkgs",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"type": "indirect"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"root": "root",
|
"root": "root",
|
||||||
|
|
24
flake.nix
24
flake.nix
|
@ -4,7 +4,8 @@
|
||||||
description = "My NixOS configuration";
|
description = "My NixOS configuration";
|
||||||
# Flake inputs
|
# Flake inputs
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "nixpkgs/nixos-unstable";
|
nixpkgs.url = "nixpkgs/nixos-24.05";
|
||||||
|
unstable.url = "nixpkgs/nixos-unstable";
|
||||||
# Software
|
# Software
|
||||||
jpassmenu = {
|
jpassmenu = {
|
||||||
url = "github:jalil-salame/jpassmenu";
|
url = "github:jalil-salame/jpassmenu";
|
||||||
|
@ -29,10 +30,11 @@
|
||||||
};
|
};
|
||||||
# Modules
|
# Modules
|
||||||
home-manager = {
|
home-manager = {
|
||||||
url = "github:nix-community/home-manager";
|
url = "github:nix-community/home-manager/release-24.05";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
nixos-hardware.url = "github:NixOS/nixos-hardware";
|
nixos-hardware.url = "github:NixOS/nixos-hardware";
|
||||||
|
# FIXME: pin to 24.05 when avalialble
|
||||||
stylix = {
|
stylix = {
|
||||||
url = "github:jalil-salame/stylix/enable-option";
|
url = "github:jalil-salame/stylix/enable-option";
|
||||||
inputs = {
|
inputs = {
|
||||||
|
@ -43,7 +45,7 @@
|
||||||
nixvim = {
|
nixvim = {
|
||||||
url = "github:nix-community/nixvim";
|
url = "github:nix-community/nixvim";
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.follows = "nixpkgs";
|
nixpkgs.follows = "unstable";
|
||||||
devshell.follows = "devshell";
|
devshell.follows = "devshell";
|
||||||
nix-darwin.follows = ""; # disable MacOS stuff
|
nix-darwin.follows = ""; # disable MacOS stuff
|
||||||
home-manager.follows = "home-manager";
|
home-manager.follows = "home-manager";
|
||||||
|
@ -69,14 +71,13 @@
|
||||||
outputs = {
|
outputs = {
|
||||||
self,
|
self,
|
||||||
nixpkgs,
|
nixpkgs,
|
||||||
|
unstable,
|
||||||
stylix,
|
stylix,
|
||||||
home-manager,
|
home-manager,
|
||||||
nixos-hardware,
|
nixos-hardware,
|
||||||
jpassmenu,
|
jpassmenu,
|
||||||
audiomenu,
|
audiomenu,
|
||||||
nixvim,
|
nixvim,
|
||||||
# neovim-flake,
|
|
||||||
# neovim-src,
|
|
||||||
lix,
|
lix,
|
||||||
lix-module,
|
lix-module,
|
||||||
...
|
...
|
||||||
|
@ -158,10 +159,15 @@
|
||||||
nixvim = nixvim.overlays.default;
|
nixvim = nixvim.overlays.default;
|
||||||
jpassmenu = jpassmenu.overlays.default;
|
jpassmenu = jpassmenu.overlays.default;
|
||||||
audiomenu = audiomenu.overlays.default;
|
audiomenu = audiomenu.overlays.default;
|
||||||
# FIXME: remove once merged in nixpkgs
|
unstable = final: prev: {
|
||||||
# neovim-nightly = final: prev: {
|
inherit
|
||||||
# neovim = final.callPackage (neovim-flake + "/flake/packages/neovim.nix") {inherit neovim-src;};
|
(unstable.legacyPackages.${prev.system})
|
||||||
# };
|
gitoxide
|
||||||
|
jujutsu
|
||||||
|
wezterm
|
||||||
|
;
|
||||||
|
unstable = unstable.legacyPackages.${prev.system};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Nix files formatter (run `nix fmt`)
|
# Nix files formatter (run `nix fmt`)
|
||||||
|
|
|
@ -17,7 +17,7 @@ in {
|
||||||
(lib.optionalAttrs canSetAsDefault {defaultEditor = lib.mkDefault true;})
|
(lib.optionalAttrs canSetAsDefault {defaultEditor = lib.mkDefault true;})
|
||||||
(lib.optionalAttrs notStandalone {enable = lib.mkDefault true;})
|
(lib.optionalAttrs notStandalone {enable = lib.mkDefault true;})
|
||||||
(lib.mkIf cfg.enable {
|
(lib.mkIf cfg.enable {
|
||||||
# package = pkgs.neovim;
|
package = pkgs.unstable.neovim-unwrapped;
|
||||||
globals.mapleader = " ";
|
globals.mapleader = " ";
|
||||||
# Appearance
|
# Appearance
|
||||||
colorschemes.gruvbox = {
|
colorschemes.gruvbox = {
|
||||||
|
@ -50,12 +50,12 @@ in {
|
||||||
# Enable local configuration :h 'exrc'
|
# Enable local configuration :h 'exrc'
|
||||||
exrc = true; # safe since nvim 0.9
|
exrc = true; # safe since nvim 0.9
|
||||||
};
|
};
|
||||||
plugins = import ./plugins.nix {inherit lib pkgs;};
|
plugins = import ./plugins.nix {inherit lib;};
|
||||||
keymaps = import ./mappings.nix;
|
keymaps = import ./mappings.nix;
|
||||||
inherit (import ./augroups.nix) autoGroups autoCmd;
|
inherit (import ./augroups.nix) autoGroups autoCmd;
|
||||||
extraPlugins = let
|
extraPlugins = let
|
||||||
plugins = pkgs.vimPlugins;
|
plugins = pkgs.unstable.vimPlugins;
|
||||||
jjdescription = pkgs.callPackage ./vim-jjdescription.nix {};
|
jjdescription = pkgs.unstable.callPackage ./vim-jjdescription.nix {};
|
||||||
in [
|
in [
|
||||||
plugins.nui-nvim
|
plugins.nui-nvim
|
||||||
plugins.nvim-web-devicons
|
plugins.nvim-web-devicons
|
||||||
|
@ -63,14 +63,12 @@ in {
|
||||||
];
|
];
|
||||||
# Formatting
|
# Formatting
|
||||||
extraPackages = [
|
extraPackages = [
|
||||||
pkgs.stylua
|
pkgs.unstable.stylua
|
||||||
pkgs.shfmt
|
pkgs.unstable.shfmt
|
||||||
pkgs.taplo
|
pkgs.unstable.taplo
|
||||||
pkgs.yamlfmt
|
pkgs.unstable.yamlfmt
|
||||||
pkgs.nixpkgs-fmt
|
pkgs.unstable.alejandra
|
||||||
pkgs.alejandra
|
pkgs.unstable.luajitPackages.jsregexp
|
||||||
pkgs.nixfmt-classic
|
|
||||||
pkgs.luajitPackages.jsregexp
|
|
||||||
];
|
];
|
||||||
extraConfigLuaPre = ''
|
extraConfigLuaPre = ''
|
||||||
-- Lua Pre Config
|
-- Lua Pre Config
|
||||||
|
|
|
@ -1,7 +1,4 @@
|
||||||
{
|
{lib}: {
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
}: {
|
|
||||||
bacon = {
|
bacon = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings.quickfix.enabled = true;
|
settings.quickfix.enabled = true;
|
||||||
|
|
|
@ -22,7 +22,6 @@ in {
|
||||||
./options.nix
|
./options.nix
|
||||||
./gui
|
./gui
|
||||||
stylix.nixosModules.stylix
|
stylix.nixosModules.stylix
|
||||||
# FIXME(https://github.com/danth/stylix/issues/216): Must configure stylix
|
|
||||||
{stylix = import ./stylix-config.nix {inherit config pkgs;};}
|
{stylix = import ./stylix-config.nix {inherit config pkgs;};}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue