feat: replace nix with lix
Lix is a fork of cppnix, see https://lix.systems/ for more details
Change-Id: Icfeeeddb85fc2f62d973269e7e669652ceab6a11
Reviewed-on: https://git.clicks.codes/c/Chimera/NixFiles/+/710
Tested-by: Skyler Grey <minion@clicks.codes>
Reviewed-by: Samuel Shuert <coded@clicks.codes>
diff --git a/flake.lock b/flake.lock
index 662a3b9..9ea02cf 100644
--- a/flake.lock
+++ b/flake.lock
@@ -24,11 +24,11 @@
"collabora-gtimelog": {
"flake": false,
"locked": {
- "lastModified": 1699275431,
- "narHash": "sha256-u5ooKnWhkf9Eh90nyqAvHzIDgidhx05SI66L3VLwRJ0=",
+ "lastModified": 1711149987,
+ "narHash": "sha256-M9pCF+XVf5ylxgq0BSUn5Vkg1HZ6i88LDiUDM4Y1Ghs=",
"ref": "refs/heads/master",
- "rev": "3faf89054bebf89fcee8640f1b1c2b2b23d1a0dc",
- "revCount": 464,
+ "rev": "8395ec4576cf54411d974675d26f64208acdcee0",
+ "revCount": 465,
"type": "git",
"url": "https://gitlab.collabora.com/collabora/gtimelog.git"
},
@@ -68,11 +68,11 @@
"firefox-sidebery-gnome": {
"flake": false,
"locked": {
- "lastModified": 1711290399,
- "narHash": "sha256-e1xuHAHgeC8EU7cAIa3XfvzgI4Y7rzyTkAt9sBsgrfc=",
+ "lastModified": 1715874608,
+ "narHash": "sha256-JouEEHCgFk9WMAi1VFqNP+Ow5I5NFD+B2+3E6BG1Y3c=",
"owner": "rafaelmardojai",
"repo": "firefox-gnome-theme",
- "rev": "33015314c12190230295cff61ced148e0f7ffe1c",
+ "rev": "1efffcaa78904816f70dd493627412d299b23a52",
"type": "github"
},
"original": {
@@ -123,6 +123,43 @@
"systems": "systems_2"
},
"locked": {
+ "lastModified": 1710146030,
+ "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
+ "type": "github"
+ },
+ "original": {
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "type": "github"
+ }
+ },
+ "flake-utils-plus": {
+ "inputs": {
+ "flake-utils": "flake-utils_2"
+ },
+ "locked": {
+ "lastModified": 1715533576,
+ "narHash": "sha256-fT4ppWeCJ0uR300EH3i7kmgRZnAVxrH+XtK09jQWihk=",
+ "owner": "gytis-ivaskevicius",
+ "repo": "flake-utils-plus",
+ "rev": "3542fe9126dc492e53ddd252bb0260fe035f2c0f",
+ "type": "github"
+ },
+ "original": {
+ "owner": "gytis-ivaskevicius",
+ "repo": "flake-utils-plus",
+ "rev": "3542fe9126dc492e53ddd252bb0260fe035f2c0f",
+ "type": "github"
+ }
+ },
+ "flake-utils_2": {
+ "inputs": {
+ "systems": "systems_3"
+ },
+ "locked": {
"lastModified": 1694529238,
"narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
"owner": "numtide",
@@ -136,21 +173,18 @@
"type": "github"
}
},
- "flake-utils-plus": {
- "inputs": {
- "flake-utils": "flake-utils"
- },
+ "flakey-profile": {
"locked": {
- "lastModified": 1696331477,
- "narHash": "sha256-YkbRa/1wQWdWkVJ01JvV+75KIdM37UErqKgTf0L54Fk=",
- "owner": "gytis-ivaskevicius",
- "repo": "flake-utils-plus",
- "rev": "bfc53579db89de750b25b0c5e7af299e0c06d7d3",
+ "lastModified": 1712898590,
+ "narHash": "sha256-FhGIEU93VHAChKEXx905TSiPZKga69bWl1VB37FK//I=",
+ "owner": "lf-",
+ "repo": "flakey-profile",
+ "rev": "243c903fd8eadc0f63d205665a92d4df91d42d9d",
"type": "github"
},
"original": {
- "owner": "gytis-ivaskevicius",
- "repo": "flake-utils-plus",
+ "owner": "lf-",
+ "repo": "flakey-profile",
"type": "github"
}
},
@@ -161,11 +195,11 @@
]
},
"locked": {
- "lastModified": 1713453913,
- "narHash": "sha256-vbXq52VRlL1defMHrwhsoeHm95O3mFefsSSJyNEghbA=",
+ "lastModified": 1716457508,
+ "narHash": "sha256-ZxzffLuWRyuMrkVVq7wastNUqeO0HJL9xqfY1QsYaqo=",
"owner": "nix-community",
"repo": "home-manager",
- "rev": "178e26895b3aef028a00a32fb7e7ed0fc660645c",
+ "rev": "850cb322046ef1a268449cf1ceda5fd24d930b05",
"type": "github"
},
"original": {
@@ -190,11 +224,11 @@
]
},
"locked": {
- "lastModified": 1713214463,
- "narHash": "sha256-zAOOjqHAbccCRgJSuvTCA0FNLqKswN63LgVo43R7pxw=",
+ "lastModified": 1716576411,
+ "narHash": "sha256-FIN1wMoyePBTtibCbaeJaoKNLuAYIGwLCWAYC1DJanw=",
"owner": "hyprwm",
"repo": "hyprcursor",
- "rev": "0a53b9957f0b17f1a0036b25198f569969ad43a0",
+ "rev": "57298fc4f13c807e50ada2c986a3114b7fc2e621",
"type": "github"
},
"original": {
@@ -206,19 +240,18 @@
"hyprland": {
"inputs": {
"hyprcursor": "hyprcursor",
- "hyprland-protocols": "hyprland-protocols",
"hyprlang": "hyprlang",
+ "hyprwayland-scanner": "hyprwayland-scanner",
"nixpkgs": "nixpkgs",
"systems": "systems",
- "wlroots": "wlroots",
"xdph": "xdph"
},
"locked": {
- "lastModified": 1713376910,
- "narHash": "sha256-6cvw+CxacXe+l8/mZ1+ih21vLHvhIC+Erc7LQF0dyrQ=",
+ "lastModified": 1716583868,
+ "narHash": "sha256-ob6ep5LY0RxjdKYROYKcAxAutT02x1Kgbt/QPZErs7E=",
"owner": "hyprwm",
"repo": "Hyprland",
- "rev": "82222342f10a7eff0ec9be972153e740d0f95213",
+ "rev": "2ff95bba3fec58b9f1a127fe72dda84b1420a7af",
"type": "github"
},
"original": {
@@ -231,10 +264,12 @@
"inputs": {
"nixpkgs": [
"hyprland",
+ "xdph",
"nixpkgs"
],
"systems": [
"hyprland",
+ "xdph",
"systems"
]
},
@@ -264,11 +299,11 @@
]
},
"locked": {
- "lastModified": 1713121246,
- "narHash": "sha256-502X0Q0fhN6tJK7iEUA8CghONKSatW/Mqj4Wappd++0=",
+ "lastModified": 1716473782,
+ "narHash": "sha256-+qLn4lsHU6iL3+HTo1gTQ1tWzet8K9h+IfVemzEQZj8=",
"owner": "hyprwm",
"repo": "hyprlang",
- "rev": "78fcaa27ae9e1d782faa3ff06c8ea55ddce63706",
+ "rev": "87d5d984109c839482b88b4795db073eb9ed446f",
"type": "github"
},
"original": {
@@ -277,6 +312,73 @@
"type": "github"
}
},
+ "hyprwayland-scanner": {
+ "inputs": {
+ "nixpkgs": [
+ "hyprland",
+ "nixpkgs"
+ ],
+ "systems": [
+ "hyprland",
+ "systems"
+ ]
+ },
+ "locked": {
+ "lastModified": 1716058375,
+ "narHash": "sha256-CwjWoVnBZE5SBpRx9dgSQGCr4Goxyfcyv3zZbOhVqzk=",
+ "owner": "hyprwm",
+ "repo": "hyprwayland-scanner",
+ "rev": "3afed4364790aebe0426077631af1e164a9650cc",
+ "type": "github"
+ },
+ "original": {
+ "owner": "hyprwm",
+ "repo": "hyprwayland-scanner",
+ "type": "github"
+ }
+ },
+ "lix": {
+ "flake": false,
+ "locked": {
+ "lastModified": 1714955862,
+ "narHash": "sha256-REWlo2RYHfJkxnmZTEJu3Cd/2VM+wjjpPy7Xi4BdDTQ=",
+ "ref": "refs/tags/2.90-beta.1",
+ "rev": "b6799ab0374a8e1907a48915d3187e07da41d88c",
+ "revCount": 15501,
+ "type": "git",
+ "url": "https://git@git.lix.systems/lix-project/lix"
+ },
+ "original": {
+ "ref": "refs/tags/2.90-beta.1",
+ "type": "git",
+ "url": "https://git@git.lix.systems/lix-project/lix"
+ }
+ },
+ "lix-module": {
+ "inputs": {
+ "flake-utils": "flake-utils",
+ "flakey-profile": "flakey-profile",
+ "lix": [
+ "lix"
+ ],
+ "nixpkgs": [
+ "nixpkgs"
+ ]
+ },
+ "locked": {
+ "lastModified": 1716506851,
+ "narHash": "sha256-fzY708SyfHwLOFrg5ZU0fXW9mNdvRvqz64jg97vvpJM=",
+ "ref": "refs/heads/main",
+ "rev": "18fa4a89e208cb8e881f5f71c75bbd4c1c2fd37d",
+ "revCount": 83,
+ "type": "git",
+ "url": "https://git.lix.systems/lix-project/nixos-module"
+ },
+ "original": {
+ "type": "git",
+ "url": "https://git.lix.systems/lix-project/nixos-module"
+ }
+ },
"nix-index-database": {
"inputs": {
"nixpkgs": [
@@ -284,11 +386,11 @@
]
},
"locked": {
- "lastModified": 1713067146,
- "narHash": "sha256-9D20xjblGKEVRVCnM3qWhiizEa9i6OpK6xQJajwcwOQ=",
+ "lastModified": 1716170277,
+ "narHash": "sha256-fCAiox/TuzWGVaAz16PxrR4Jtf9lN5dwWL2W74DS0yI=",
"owner": "nix-community",
"repo": "nix-index-database",
- "rev": "93aed67288be60c9ef6133ba2f8de128f4ef265c",
+ "rev": "e0638db3db43b582512a7de8c0f8363a162842b9",
"type": "github"
},
"original": {
@@ -299,11 +401,11 @@
},
"nixos-hardware": {
"locked": {
- "lastModified": 1713441075,
- "narHash": "sha256-3GGeFsEO8ivD+TcDEqe4s/d0VLvMYGNDGtx0ZnBxkUs=",
+ "lastModified": 1716173274,
+ "narHash": "sha256-FC21Bn4m6ctajMjiUof30awPBH/7WjD0M5yqrWepZbY=",
"owner": "nixos",
"repo": "nixos-hardware",
- "rev": "6f976e53752e5b9ab08f9a3b1b0b9c67815c9754",
+ "rev": "d9e0b26202fd500cf3e79f73653cce7f7d541191",
"type": "github"
},
"original": {
@@ -315,11 +417,11 @@
},
"nixpkgs": {
"locked": {
- "lastModified": 1712963716,
- "narHash": "sha256-WKm9CvgCldeIVvRz87iOMi8CFVB1apJlkUT4GGvA0iM=",
+ "lastModified": 1716330097,
+ "narHash": "sha256-8BO3B7e3BiyIDsaKA0tY8O88rClYRTjvAp66y+VBUeU=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "cfd6b5fc90b15709b780a5a1619695a88505a176",
+ "rev": "5710852ba686cc1fd0d3b8e22b3117d43ba374c2",
"type": "github"
},
"original": {
@@ -331,11 +433,11 @@
},
"nixpkgs-stable": {
"locked": {
- "lastModified": 1713434076,
- "narHash": "sha256-+/p5edwlkqKZc6GDAQl+92Hoe1f3NNbUF9uj+X9H3pU=",
+ "lastModified": 1716061101,
+ "narHash": "sha256-H0eCta7ahEgloGIwE/ihkyGstOGu+kQwAiHvwVoXaA0=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "8494ae076b7878d61a7d2d25e89a847fe8f8364c",
+ "rev": "e7cc61784ddf51c81487637b3031a6dd2d6673a2",
"type": "github"
},
"original": {
@@ -347,11 +449,11 @@
},
"nixpkgs_2": {
"locked": {
- "lastModified": 1713248628,
- "narHash": "sha256-NLznXB5AOnniUtZsyy/aPWOk8ussTuePp2acb9U+ISA=",
+ "lastModified": 1716509168,
+ "narHash": "sha256-4zSIhSRRIoEBwjbPm3YiGtbd8HDWzFxJjw5DYSDy1n8=",
"owner": "nixos",
"repo": "nixpkgs",
- "rev": "5672bc9dbf9d88246ddab5ac454e82318d094bb8",
+ "rev": "bfb7a882678e518398ce9a31a881538679f6f092",
"type": "github"
},
"original": {
@@ -363,11 +465,11 @@
},
"nixpkgs_3": {
"locked": {
- "lastModified": 1713284584,
- "narHash": "sha256-rRuPBJD9+yjz7tY3xC/BvFUwloutynR9piiVE6fhGqo=",
+ "lastModified": 1716062047,
+ "narHash": "sha256-OhysviwHQz4p2HZL4g7XGMLoUbWMjkMr/ogaR3VUYNA=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "2b6ee326ad047870526d9a3ae88dfd0197da898d",
+ "rev": "02923630b89aa1ab36ef8e422501a6f4fd4b2016",
"type": "github"
},
"original": {
@@ -379,11 +481,11 @@
},
"nur": {
"locked": {
- "lastModified": 1713454509,
- "narHash": "sha256-aCey0Tc3HkyrLkHcje4qdhhgs1Q/+FvKKImcTMvgQ8Y=",
+ "lastModified": 1716640619,
+ "narHash": "sha256-4H2+acLfpemNJ5w18rf0v5HUQwBy0ClQFaLIqXMCYwg=",
"owner": "nix-community",
"repo": "nur",
- "rev": "c52b1eaed7949111d926e3b4c111358a84b14ea2",
+ "rev": "6df18dde288df4a770e5080ec92b3326c5da9b9d",
"type": "github"
},
"original": {
@@ -401,6 +503,8 @@
"firefox-sidebery-gnome": "firefox-sidebery-gnome",
"home-manager": "home-manager",
"hyprland": "hyprland",
+ "lix": "lix",
+ "lix-module": "lix-module",
"nix-index-database": "nix-index-database",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs_2",
@@ -419,11 +523,11 @@
]
},
"locked": {
- "lastModified": 1709576611,
- "narHash": "sha256-vkcNo9pDhKObEU1xKDHcUUWKQbuYIi5051/5s/l6Iig=",
+ "lastModified": 1716563019,
+ "narHash": "sha256-7TFvVE4HR/b65/0AAhewYHEJzUXxIEJn82ow5bCkrDo=",
"owner": "snowfallorg",
"repo": "lib",
- "rev": "5082cdac87c5fd99ef2ee5989d9f73888bc5ed14",
+ "rev": "727d634555bc6749c19cce1ac63d56b6400c82ed",
"type": "github"
},
"original": {
@@ -439,11 +543,11 @@
"nixpkgs-stable": "nixpkgs-stable"
},
"locked": {
- "lastModified": 1713457024,
- "narHash": "sha256-31MpStyXedDL1fvuOvn6iz3JURSVShDtDVMyP1PTjtc=",
+ "lastModified": 1716400300,
+ "narHash": "sha256-0lMkIk9h3AzOHs1dCL9RXvvN4PM8VBKb+cyGsqOKa4c=",
"owner": "Mic92",
"repo": "sops-nix",
- "rev": "b94c6edbb8355756c53efc8ca3874c63622f287a",
+ "rev": "b549832718b8946e875c016a4785d204fcfc2e53",
"type": "github"
},
"original": {
@@ -482,6 +586,21 @@
"type": "github"
}
},
+ "systems_3": {
+ "locked": {
+ "lastModified": 1681028828,
+ "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
+ "owner": "nix-systems",
+ "repo": "default",
+ "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nix-systems",
+ "repo": "default",
+ "type": "github"
+ }
+ },
"templates": {
"locked": {
"lastModified": 1708553502,
@@ -497,29 +616,9 @@
"url": "https://git.clicks.codes/Templates"
}
},
- "wlroots": {
- "flake": false,
- "locked": {
- "lastModified": 1713124002,
- "narHash": "sha256-vPeZCY+sdiGsz4fl3AVVujfyZyQBz6+vZdkUE4hQ+HI=",
- "owner": "hyprwm",
- "repo": "wlroots-hyprland",
- "rev": "611a4f24cd2384378f6e500253983107c6656c64",
- "type": "github"
- },
- "original": {
- "owner": "hyprwm",
- "repo": "wlroots-hyprland",
- "rev": "611a4f24cd2384378f6e500253983107c6656c64",
- "type": "github"
- }
- },
"xdph": {
"inputs": {
- "hyprland-protocols": [
- "hyprland",
- "hyprland-protocols"
- ],
+ "hyprland-protocols": "hyprland-protocols",
"hyprlang": [
"hyprland",
"hyprlang"
@@ -534,11 +633,11 @@
]
},
"locked": {
- "lastModified": 1713214484,
- "narHash": "sha256-h1bSIsDuPk1FGgvTuSHJyiU2Glu7oAyoPMJutKZmLQ8=",
+ "lastModified": 1716290197,
+ "narHash": "sha256-1u9Exrc7yx9qtES2brDh7/DDZ8w8ap1nboIOAtCgeuM=",
"owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland",
- "rev": "bb44921534a9cee9635304fdb876c1b3ec3a8f61",
+ "rev": "91e48d6acd8a5a611d26f925e51559ab743bc438",
"type": "github"
},
"original": {
diff --git a/flake.nix b/flake.nix
index 4b6fc1e..385a9e7 100644
--- a/flake.nix
+++ b/flake.nix
@@ -32,6 +32,15 @@
};
hyprland.url = "github:hyprwm/Hyprland";
+ lix = {
+ url = "git+https://git@git.lix.systems/lix-project/lix?ref=refs/tags/2.90-beta.1";
+ flake = false;
+ };
+ lix-module = {
+ url = "git+https://git.lix.systems/lix-project/nixos-module";
+ inputs.lix.follows = "lix";
+ inputs.nixpkgs.follows = "nixpkgs";
+ };
nix-index-database = {
url = "github:nix-community/nix-index-database";
@@ -72,6 +81,7 @@
inputs.hyprland.nixosModules.default
inputs.nur.nixosModules.nur
inputs.sops-nix.nixosModules.sops
+ inputs.lix-module.nixosModules.default
];
systems.hosts.greylag.modules = [
diff --git a/modules/home/lix/default.nix b/modules/home/lix/default.nix
new file mode 100644
index 0000000..a02982e
--- /dev/null
+++ b/modules/home/lix/default.nix
@@ -0,0 +1,4 @@
+{ inputs, system, lib, ... }:
+{
+ nix.package = lib.mkDefault inputs.lix-module.packages.${system}.default; # Snowfall will override default nix.package by system nix if running on a nixos system
+}
diff --git a/modules/home/shell/default.nix b/modules/home/shell/default.nix
index 66bea83..214746e 100644
--- a/modules/home/shell/default.nix
+++ b/modules/home/shell/default.nix
@@ -90,6 +90,8 @@
tree = lib.mkIf config.chimera.shell.replacements.erdtree.enable "${pkgs.erdtree}/bin/erdtree";
du = lib.mkIf config.chimera.shell.replacements.dust.enable "${pkgs.dust}/bin/dust";
cat = lib.mkIf config.chimera.shell.replacements.bat.enable "${pkgs.bat}/bin/bat";
+
+ lix = "${config.nix.package}/bin/nix"; # Lix, like nix
};
home.sessionVariables = lib.mkIf (config.chimera.shell.usefulPackages.enable && config.chimera.theme.style == "Light") {
diff --git a/modules/nixos/lix/default.nix b/modules/nixos/lix/default.nix
new file mode 100644
index 0000000..cb3fca7
--- /dev/null
+++ b/modules/nixos/lix/default.nix
@@ -0,0 +1,4 @@
+{ inputs, system, ... }:
+{
+ nix.package = inputs.lix-module.packages.${system}.default;
+}