Prepare multi-system support
This commit is contained in:
parent
546bcb7d74
commit
a3b4ab95f3
83 changed files with 120 additions and 112 deletions
50
flake.lock
50
flake.lock
|
@ -3,7 +3,7 @@
|
|||
"darwin": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
"nixpkgs-unstable"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
|
@ -69,16 +69,16 @@
|
|||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
"nixpkgs-unstable"
|
||||
],
|
||||
"utils": "utils"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1658751516,
|
||||
"narHash": "sha256-Y/3dHoTjbvYBtWd+TTBQJUIgDPO9d+Gqt05C5dyR7E4=",
|
||||
"lastModified": 1658924727,
|
||||
"narHash": "sha256-Fhh9FK9CvuCLxG1WkWJPoendDeXKI4gHYTfezo1n2Zg=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "dbed4c794d20d51027fc1107f063ec5be027dafc",
|
||||
"rev": "0e2f7876d2f2ae98a67d89a8bef8c49332aae5af",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -97,11 +97,11 @@
|
|||
},
|
||||
"locked": {
|
||||
"dir": "contrib",
|
||||
"lastModified": 1658896062,
|
||||
"narHash": "sha256-LJJaybijEjZJHFqpXX9dpTsGpK3NMEUaKAEuCYET+Dw=",
|
||||
"lastModified": 1659077058,
|
||||
"narHash": "sha256-C0HKHyeRp/ifJ9yacgTdbwu9RZRtKLjGUiKnE8kUElg=",
|
||||
"owner": "neovim",
|
||||
"repo": "neovim",
|
||||
"rev": "57ce6c2b8ff1dc3045f6e6be325d3e6b6b4fb15c",
|
||||
"rev": "02efdb4d587242122df99b347a25fd4c96b0ca97",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -116,15 +116,15 @@
|
|||
"flake-compat": "flake-compat",
|
||||
"neovim-flake": "neovim-flake",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
"nixpkgs-unstable"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1658909778,
|
||||
"narHash": "sha256-Eu7GyXO9JCTYYJiuSJ28Z18fV1Ufwx0BNDpuTv+2Wkc=",
|
||||
"lastModified": 1659082600,
|
||||
"narHash": "sha256-9oYbGTpY0AG4otRlXeFif/e4BzfAzW7sZW3Z9Hfy0IU=",
|
||||
"owner": "nix-community",
|
||||
"repo": "neovim-nightly-overlay",
|
||||
"rev": "36ccc9c4bbe52ec826c51f1d991982e78174039b",
|
||||
"rev": "a95f350ae46ee90213078dffc351013bae797b94",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -136,15 +136,15 @@
|
|||
"nifoc-overlay": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
"nixpkgs-unstable"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1654961851,
|
||||
"narHash": "sha256-zcYRu/Rc3WiM6ygNpcxidbQCEvXVrrTOuU8Mm/nrf84=",
|
||||
"lastModified": 1659040381,
|
||||
"narHash": "sha256-kk3ORGTFEccNY1tYlJ+ho6XxfqQLWr66FPD0tTppjlM=",
|
||||
"owner": "nifoc",
|
||||
"repo": "nix-overlay",
|
||||
"rev": "a57dac5b77dc0718f1c5a0d6e809ed5e1f3d14ac",
|
||||
"rev": "212d8f80c7d3a252c8ca86aae442c9e8580aa224",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -153,13 +153,13 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"nixpkgs-unstable": {
|
||||
"locked": {
|
||||
"lastModified": 1658822272,
|
||||
"narHash": "sha256-M87AIbje5cNnAy9iP3uoufZFvxooqtJq2ZRXeUeBO44=",
|
||||
"lastModified": 1659072678,
|
||||
"narHash": "sha256-tOAZdTFilNCASEkwS2wCtSQkfWle7JKb4fXgKgTbpRc=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "cc895a46b238e2fb09844583e4566f09060d0f81",
|
||||
"rev": "1a1bd86756ca15f8bafdce4499d6a88089bec3b6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -175,7 +175,7 @@
|
|||
"home-manager": "home-manager",
|
||||
"neovim-nightly-overlay": "neovim-nightly-overlay",
|
||||
"nifoc-overlay": "nifoc-overlay",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||
"zig-overlay": "zig-overlay"
|
||||
}
|
||||
},
|
||||
|
@ -198,15 +198,15 @@
|
|||
"inputs": {
|
||||
"flake-utils": "flake-utils_2",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
"nixpkgs-unstable"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1658883445,
|
||||
"narHash": "sha256-o3ZNNtsJaemouGyrQByYLbN9eQv2HIlrExkhAu/5vcM=",
|
||||
"lastModified": 1659056111,
|
||||
"narHash": "sha256-Mbyp0uHZYXTHMaB2Ik4+kE/5fs+c0NXJ7OmJuBk6Dk8=",
|
||||
"owner": "arqv",
|
||||
"repo": "zig-overlay",
|
||||
"rev": "8b2b7e416e943a603ec5a9a0c572b59e17807a1a",
|
||||
"rev": "965e5272ef9e12189349a95c12c3a40866aaa19a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
56
flake.nix
56
flake.nix
|
@ -1,71 +1,41 @@
|
|||
{
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
|
||||
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixpkgs-unstable";
|
||||
|
||||
darwin = {
|
||||
url = "github:lnl7/nix-darwin";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.nixpkgs.follows = "nixpkgs-unstable";
|
||||
};
|
||||
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.nixpkgs.follows = "nixpkgs-unstable";
|
||||
};
|
||||
|
||||
neovim-nightly-overlay = {
|
||||
url = "github:nix-community/neovim-nightly-overlay";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.nixpkgs.follows = "nixpkgs-unstable";
|
||||
};
|
||||
|
||||
zig-overlay = {
|
||||
url = "github:arqv/zig-overlay";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.nixpkgs.follows = "nixpkgs-unstable";
|
||||
};
|
||||
|
||||
nifoc-overlay = {
|
||||
url = "github:nifoc/nix-overlay";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.nixpkgs.follows = "nixpkgs-unstable";
|
||||
};
|
||||
};
|
||||
|
||||
outputs = inputs@{ self, nixpkgs, darwin, home-manager, ... }:
|
||||
outputs = inputs@{ self, ... }:
|
||||
let
|
||||
overlay-x86 = final: prev: { pkgs-x86 = import inputs.nixpkgs { system = "x86_64-darwin"; }; };
|
||||
overlay-neovim = inputs.neovim-nightly-overlay.overlay;
|
||||
overlay-zig = final: prev: { zigpkgs = inputs.zig-overlay.packages.${prev.system}; };
|
||||
overlay-nifoc = inputs.nifoc-overlay.overlay;
|
||||
overlay-patches = import ./overlay-patches.nix;
|
||||
|
||||
nixpkgsConfig = {
|
||||
overlays = [
|
||||
overlay-x86
|
||||
overlay-neovim
|
||||
overlay-zig
|
||||
overlay-nifoc
|
||||
overlay-patches
|
||||
];
|
||||
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
allowBroken = true;
|
||||
};
|
||||
config-Styx = import ./system/flakes/Styx.nix {
|
||||
nixpkgs = inputs.nixpkgs-unstable;
|
||||
inherit (inputs) home-manager;
|
||||
inherit (inputs) darwin;
|
||||
inherit inputs;
|
||||
};
|
||||
in
|
||||
{
|
||||
darwinConfigurations."Styx" = darwin.lib.darwinSystem {
|
||||
system = "aarch64-darwin";
|
||||
modules = [
|
||||
./darwin-configuration.nix
|
||||
|
||||
home-manager.darwinModules.home-manager
|
||||
{
|
||||
nixpkgs = nixpkgsConfig;
|
||||
nix.nixPath = { nixpkgs = "${nixpkgs}"; };
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.users.daniel = import ./home.nix;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
config-Styx;
|
||||
}
|
||||
|
|
|
@ -2,31 +2,31 @@
|
|||
|
||||
{
|
||||
imports = [
|
||||
./programs/fish.nix
|
||||
./programs/starship.nix
|
||||
./programs/direnv.nix
|
||||
./programs/kitty.nix
|
||||
../programs/fish.nix
|
||||
../programs/starship.nix
|
||||
../programs/direnv.nix
|
||||
../programs/kitty.nix
|
||||
|
||||
./programs/nvim
|
||||
../programs/nvim
|
||||
|
||||
./programs/git.nix
|
||||
../programs/git.nix
|
||||
|
||||
./programs/bat.nix
|
||||
../programs/bat.nix
|
||||
|
||||
./programs/fzf.nix
|
||||
../programs/fzf.nix
|
||||
|
||||
./programs/jq.nix
|
||||
../programs/jq.nix
|
||||
|
||||
./programs/texlive.nix
|
||||
./programs/pandoc.nix
|
||||
../programs/texlive.nix
|
||||
../programs/pandoc.nix
|
||||
|
||||
./programs/podman.nix
|
||||
../programs/podman.nix
|
||||
|
||||
./programs/scripts.nix
|
||||
../programs/scripts.nix
|
||||
|
||||
./programs/ssh.nix
|
||||
../programs/ssh.nix
|
||||
|
||||
./programs/yt-dlp.nix
|
||||
../programs/yt-dlp.nix
|
||||
];
|
||||
|
||||
home = {
|
|
@ -96,7 +96,7 @@
|
|||
shellAliases = {
|
||||
drsw = "nix-darwin-switch";
|
||||
upa = "nix flake update ~/.config/nixpkgs -v && upn";
|
||||
upn = "$HOME/.config/nixpkgs/programs/nvim/update-plugins.sh";
|
||||
upn = "$HOME/.config/nixpkgs/home/programs/nvim/update-plugins.sh";
|
||||
ngc = "nix-collect-garbage -d && sudo nix-collect-garbage -d";
|
||||
nsr = "sudo nix-store --verify --check-contents --repair";
|
||||
|
|
@ -47,12 +47,12 @@
|
|||
};
|
||||
yanky-nvim = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||
pname = "yanky.nvim";
|
||||
version = "2022-07-21";
|
||||
version = "2022-07-29";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "gbprod";
|
||||
repo = "yanky.nvim";
|
||||
rev = "57380fe70758dae6aeac5a304a0b28b3cff3cb5c";
|
||||
sha256 = "11r5dvij20cr69rcaag5f03bvqmjhjshczchs2civhm9sycfzcm2";
|
||||
rev = "d55f095b472a3d0355d3b7c5c84d4774ee769a7f";
|
||||
sha256 = "1zj8dvyb2486kpim4vlmrpsyga2hny20q1ya9rmqxfnsahydpmnz";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
|
@ -80,12 +80,12 @@
|
|||
};
|
||||
leap-nvim = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||
pname = "leap.nvim";
|
||||
version = "2022-07-24";
|
||||
version = "2022-07-26";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "ggandor";
|
||||
repo = "leap.nvim";
|
||||
rev = "4e6e6afe81052483bf0900dc2bb8882194b7be50";
|
||||
sha256 = "1dffrxhg9n71z33vvnbnk7wj3yzvg52s8fxqnk8mqvv27s62d42j";
|
||||
rev = "2a11836d290560c746b75c424827660e4d94bd12";
|
||||
sha256 = "1x9s116h1qk5xxhi43d06h43rz8fwm5v1jc2mfldidnljkp3la10";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
|
@ -153,12 +153,12 @@
|
|||
};
|
||||
project-nvim = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||
pname = "project.nvim";
|
||||
version = "2022-05-29";
|
||||
version = "2022-07-28";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "ahmedkhalf";
|
||||
repo = "project.nvim";
|
||||
rev = "541115e762764bc44d7d3bf501b6e367842d3d4f";
|
||||
sha256 = "0vabnhb5d8nc25ap9zixazmr4sm5ylq0iqzsc89cc3h1907xp6lz";
|
||||
rev = "e449497c0bceb6e50947b840ec3658bf1108bf0b";
|
||||
sha256 = "0kq464j8m67bmm2050pgzb284n6jfs8ivg9j2xns0czjkw9bm4nk";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
|
@ -197,12 +197,12 @@
|
|||
};
|
||||
nvim-lspconfig = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||
pname = "nvim-lspconfig";
|
||||
version = "2022-07-25";
|
||||
version = "2022-07-29";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "neovim";
|
||||
repo = "nvim-lspconfig";
|
||||
rev = "ba25b747a3cff70c1532c2f28fcc912cf7b938ea";
|
||||
sha256 = "0fnldljq3n7nnmjmwvn8mbfq5m34ca5kq1bgjdjpfsy2w2mhlabc";
|
||||
rev = "60f2993b9661d9844cee3bebdbd1b5860577eb3c";
|
||||
sha256 = "0029s9i40x5ri104ray7hzw7c6xfryb18rq4rz8yq2wz65rr9npw";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
|
@ -230,12 +230,12 @@
|
|||
};
|
||||
nvim-lint = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||
pname = "nvim-lint";
|
||||
version = "2022-07-23";
|
||||
version = "2022-07-27";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "mfussenegger";
|
||||
repo = "nvim-lint";
|
||||
rev = "4d0abb94776f860ed0eef7c2d7aae96a804cbee5";
|
||||
sha256 = "0b47zj8j1ag8y5avyb9zklfjivj18ns4h6n3n6a0shgyfmihn4r7";
|
||||
rev = "754b18f33a3167f8ef0afe91a1960aa7db280535";
|
||||
sha256 = "0davfw57xv5z33685spsmh0mykr3cq0zpmk8by0a3p96pyrkfcv9";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
|
@ -252,23 +252,23 @@
|
|||
};
|
||||
LuaSnip = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||
pname = "LuaSnip";
|
||||
version = "2022-07-26";
|
||||
version = "2022-07-27";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "L3MON4D3";
|
||||
repo = "LuaSnip";
|
||||
rev = "281a89e374eb04663e18e786db5f215092a56595";
|
||||
sha256 = "1xkysyqqwdhympljg44hgi5fbfgz042qx91vpf85j99wqhaiz4i4";
|
||||
rev = "53e812a6f51c9d567c98215733100f0169bcc20a";
|
||||
sha256 = "0qr84j39d4202ag1gvi26xilcsqwfw32d9lv96zc96a51l6r40y0";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
friendly-snippets = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||
pname = "friendly-snippets";
|
||||
version = "2022-07-24";
|
||||
version = "2022-07-27";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "rafamadriz";
|
||||
repo = "friendly-snippets";
|
||||
rev = "5632135df892a742e5c3bbf97f0f634e273254d4";
|
||||
sha256 = "1j1q6zmbq9xgsmnyg9x8wg6dkasmbd629aw4p6cg0lij1fngc65s";
|
||||
rev = "8c95fecb3960eb0d3d3b9bd582d49a613bd7a7fb";
|
||||
sha256 = "1y34pb7v7pk4zvjbab5bs5shcbxh0msiy6aijrkp119a1r0zpndj";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
||||
|
@ -494,12 +494,12 @@
|
|||
};
|
||||
toggleterm-nvim = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||
pname = "toggleterm.nvim";
|
||||
version = "2022-07-25";
|
||||
version = "2022-07-28";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "akinsho";
|
||||
repo = "toggleterm.nvim";
|
||||
rev = "cd12ed737d3de2757a540ddf4962a6de05881127";
|
||||
sha256 = "032x7kmy8aqrc3lq6ns3jcicvjgwjhsfmfch3s20af48y6lp1xm7";
|
||||
rev = "a7c9a6fd135f96639e2ac686691a32db6d011471";
|
||||
sha256 = "03avxz9l9kz3c99dqjk63zw5wi1s0vakas9wx8l74sqrr9b8pba0";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
};
|
|
@ -1 +0,0 @@
|
|||
self: super: { }
|
39
system/flakes/Styx.nix
Normal file
39
system/flakes/Styx.nix
Normal file
|
@ -0,0 +1,39 @@
|
|||
{ nixpkgs, home-manager, darwin, inputs, ... }:
|
||||
|
||||
let
|
||||
overlay-x86 = _: _: { pkgs-x86 = import nixpkgs { system = "x86_64-darwin"; }; };
|
||||
overlay-neovim = inputs.neovim-nightly-overlay.overlay;
|
||||
overlay-zig = _: prev: { zigpkgs = inputs.zig-overlay.packages.${prev.system}; };
|
||||
overlay-nifoc = inputs.nifoc-overlay.overlay;
|
||||
|
||||
nixpkgsConfig = {
|
||||
overlays = [
|
||||
overlay-x86
|
||||
overlay-neovim
|
||||
overlay-zig
|
||||
overlay-nifoc
|
||||
];
|
||||
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
allowBroken = true;
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
darwinConfigurations."Styx" = darwin.lib.darwinSystem {
|
||||
system = "aarch64-darwin";
|
||||
modules = [
|
||||
../hosts/Styx.nix
|
||||
|
||||
home-manager.darwinModules.home-manager
|
||||
{
|
||||
nixpkgs = nixpkgsConfig;
|
||||
nix.nixPath = { nixpkgs = "${nixpkgs}"; };
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.users.daniel = import ../../home/hosts/Styx.nix;
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
imports = [
|
||||
./system/defaults.nix
|
||||
./system/fonts.nix
|
||||
../darwin/defaults.nix
|
||||
../darwin/fonts.nix
|
||||
];
|
||||
|
||||
nix = {
|
||||
|
@ -35,7 +35,7 @@
|
|||
};
|
||||
|
||||
environment = {
|
||||
darwinConfig = "$HOME/.config/nixpkgs/darwin-configuration.nix";
|
||||
darwinConfig = "$HOME/.config/nixpkgs/system/hosts/Styx.nix";
|
||||
|
||||
variables = {
|
||||
EDITOR = "nvim";
|
Loading…
Reference in a new issue