diff --git a/flake.lock b/flake.lock index 8d1fe1a..5061641 100644 --- a/flake.lock +++ b/flake.lock @@ -144,6 +144,46 @@ "type": "github" } }, + "disko": { + "inputs": { + "nixpkgs": "nixpkgs" + }, + "locked": { + "lastModified": 1700927249, + "narHash": "sha256-iqmIWiEng890/ru7ZBf4nUezFPyRm2fjRTvuwwxqk2o=", + "owner": "nix-community", + "repo": "disko", + "rev": "3cb78c93e6a02f494aaf6aeb37481c27a2e2ee22", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "disko", + "type": "github" + } + }, + "disko_2": { + "inputs": { + "nixpkgs": [ + "nixos-anywhere", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1698422527, + "narHash": "sha256-SDu3Xg263t3oXIyTaH0buOvFnKIDeZsvKDBtOz+jRbs=", + "owner": "nix-community", + "repo": "disko", + "rev": "944d338d24a9d043a3f7461c30ee6cfe4f9cca30", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "master", + "repo": "disko", + "type": "github" + } + }, "flake-compat": { "flake": false, "locked": { @@ -198,6 +238,27 @@ } }, "flake-parts_2": { + "inputs": { + "nixpkgs-lib": [ + "nixos-anywhere", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1698882062, + "narHash": "sha256-HkhafUayIqxXyHH1X8d9RDl1M2CkFgZLjKD3MzabiEo=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "8c9fa2545007b49a5db5f650ae91f227672c3877", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_3": { "inputs": { "nixpkgs-lib": "nixpkgs-lib" }, @@ -268,6 +329,24 @@ "type": "github" } }, + "flake-utils_4": { + "inputs": { + "systems": "systems_5" + }, + "locked": { + "lastModified": 1694529238, + "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "gitignore": { "inputs": { "nixpkgs": [ @@ -313,7 +392,7 @@ "hyprland": { "inputs": { "hyprland-protocols": "hyprland-protocols", - "nixpkgs": "nixpkgs", + "nixpkgs": "nixpkgs_2", "systems": "systems_2", "wlroots": "wlroots", "xdph": "xdph" @@ -363,7 +442,7 @@ "flake-compat": "flake-compat_2", "flake-parts": "flake-parts", "flake-utils": "flake-utils_2", - "nixpkgs": "nixpkgs_2", + "nixpkgs": "nixpkgs_3", "pre-commit-hooks-nix": "pre-commit-hooks-nix", "rust-overlay": "rust-overlay_2" }, @@ -381,6 +460,45 @@ "type": "github" } }, + "nixos-2305": { + "locked": { + "lastModified": 1698911509, + "narHash": "sha256-FFwqTbF+1laraWTL/t7LI+gN+DYfoj+iFYLof5wCea8=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "ecd985f22e007e6ac3152d68590c06cbbaea8c0e", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "release-23.05", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixos-anywhere": { + "inputs": { + "disko": "disko_2", + "flake-parts": "flake-parts_2", + "nixos-2305": "nixos-2305", + "nixos-images": "nixos-images", + "nixpkgs": "nixpkgs_4", + "treefmt-nix": "treefmt-nix" + }, + "locked": { + "lastModified": 1700914752, + "narHash": "sha256-d81ed+ZO7i93KTTOOW1cSbh7OsFvGoKHF1JpHEdLw3E=", + "owner": "nix-community", + "repo": "nixos-anywhere", + "rev": "7351eb2f45efc30f2cedd5f62b2e526681a21875", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixos-anywhere", + "type": "github" + } + }, "nixos-hardware": { "locked": { "lastModified": 1701020860, @@ -396,18 +514,43 @@ "type": "github" } }, + "nixos-images": { + "inputs": { + "nixos-2305": [ + "nixos-anywhere", + "nixos-2305" + ], + "nixos-unstable": [ + "nixos-anywhere", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1697515196, + "narHash": "sha256-EZivLoJHCqJdi23Mn/p+lPNHBBctGSWzEnAhYfC0VD0=", + "owner": "nix-community", + "repo": "nixos-images", + "rev": "87bccdbdfbeb07e0c4fb4c2ec3d71986e8fa24d9", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixos-images", + "type": "github" + } + }, "nixpkgs": { "locked": { - "lastModified": 1700612854, - "narHash": "sha256-yrQ8osMD+vDLGFX7pcwsY/Qr5PUd6OmDMYJZzZi0+zc=", + "lastModified": 1697915759, + "narHash": "sha256-WyMj5jGcecD+KC8gEs+wFth1J1wjisZf8kVZH13f1Zo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "19cbff58383a4ae384dea4d1d0c823d72b49d614", + "rev": "51d906d2341c9e866e48c2efcaac0f2d70bfd43e", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-unstable", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } @@ -447,6 +590,22 @@ } }, "nixpkgs_2": { + "locked": { + "lastModified": 1700612854, + "narHash": "sha256-yrQ8osMD+vDLGFX7pcwsY/Qr5PUd6OmDMYJZzZi0+zc=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "19cbff58383a4ae384dea4d1d0c823d72b49d614", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { "locked": { "lastModified": 1699354722, "narHash": "sha256-abmqUReg4PsyQSwv4d0zjcWpMHrd3IFJiTb2tZpfF04=", @@ -462,7 +621,23 @@ "type": "github" } }, - "nixpkgs_3": { + "nixpkgs_4": { + "locked": { + "lastModified": 1700218750, + "narHash": "sha256-ft54Un/pZ/KoI6hx9HLeb/SLg0SB8NvV+z7vzrpWs8c=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "2542afeb0d81db4d1e5bc8df8354cbdcc29c2f53", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable-small", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_5": { "locked": { "lastModified": 1700794826, "narHash": "sha256-RyJTnTNKhO0yqRpDISk03I/4A67/dp96YRxc86YOPgU=", @@ -478,7 +653,23 @@ "type": "github" } }, - "nixpkgs_4": { + "nixpkgs_6": { + "locked": { + "lastModified": 1700794826, + "narHash": "sha256-RyJTnTNKhO0yqRpDISk03I/4A67/dp96YRxc86YOPgU=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "5a09cb4b393d58f9ed0d9ca1555016a8543c2ac8", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_7": { "locked": { "lastModified": 1700612854, "narHash": "sha256-yrQ8osMD+vDLGFX7pcwsY/Qr5PUd6OmDMYJZzZi0+zc=", @@ -494,7 +685,7 @@ "type": "github" } }, - "nixpkgs_5": { + "nixpkgs_8": { "locked": { "lastModified": 1698318101, "narHash": "sha256-gUihHt3yPD7bVqg+k/UVHgngyaJ3DMEBchbymBMvK1E=", @@ -541,10 +732,29 @@ "type": "github" } }, - "resume": { + "projet-intelligence-artificielle-multimedia": { "inputs": { "flake-utils": "flake-utils_3", - "nixpkgs": "nixpkgs_4", + "nixpkgs": "nixpkgs_6" + }, + "locked": { + "lastModified": 1701038653, + "narHash": "sha256-mif1mtvfKUcLeLcHBjDeE8nDvSXqCgU2FlXwb123K7M=", + "ref": "refs/heads/master", + "rev": "52c1f4c76d9da18c5d674b4db3b413af9193d285", + "revCount": 20, + "type": "git", + "url": "https://git.fainsin.bzh/ENSEEIHT/projet-intelligence-artificielle-multimedia" + }, + "original": { + "type": "git", + "url": "https://git.fainsin.bzh/ENSEEIHT/projet-intelligence-artificielle-multimedia" + } + }, + "resume": { + "inputs": { + "flake-utils": "flake-utils_4", + "nixpkgs": "nixpkgs_7", "typst": "typst" }, "locked": { @@ -564,12 +774,15 @@ "root": { "inputs": { "agenix": "agenix", + "disko": "disko", "flake-utils": "flake-utils", "home-manager": "home-manager", "hyprland": "hyprland", "lanzaboote": "lanzaboote", + "nixos-anywhere": "nixos-anywhere", "nixos-hardware": "nixos-hardware", - "nixpkgs": "nixpkgs_3", + "nixpkgs": "nixpkgs_5", + "projet-intelligence-artificielle-multimedia": "projet-intelligence-artificielle-multimedia", "resume": "resume" } }, @@ -698,12 +911,48 @@ "type": "github" } }, + "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" + } + }, + "treefmt-nix": { + "inputs": { + "nixpkgs": [ + "nixos-anywhere", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1698438538, + "narHash": "sha256-AWxaKTDL3MtxaVTVU5lYBvSnlspOS0Fjt8GxBgnU0Do=", + "owner": "numtide", + "repo": "treefmt-nix", + "rev": "5deb8dc125a9f83b65ca86cf0c8167c46593e0b1", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "treefmt-nix", + "type": "github" + } + }, "typst": { "inputs": { "crane": "crane_3", - "flake-parts": "flake-parts_2", - "nixpkgs": "nixpkgs_5", - "systems": "systems_5" + "flake-parts": "flake-parts_3", + "nixpkgs": "nixpkgs_8", + "systems": "systems_6" }, "locked": { "lastModified": 1700840283, diff --git a/flake.nix b/flake.nix index a006fae..eae5298 100644 --- a/flake.nix +++ b/flake.nix @@ -1,17 +1,21 @@ { description = "Laureηt's infrastructure"; + # TODO: setup flake-parts à la place de flake-utils + # TODO: setup le formatter comme sioodmy + # TODO: rekey les secrets + changer la key de hydrogen + # TODO: luks encrypt hydrogen (dropbear ?) + # TODO: dégager btfrs de neodymium, ext4 ftw + # TODO: setup disko sur neodymium + inputs = { nixpkgs = { url = "github:NixOS/nixpkgs/nixos-unstable"; # url = "git+file:///home/laurent/Documents/nixpkgs?shallow=1"; }; - - flake-utils.url = "github:numtide/flake-utils"; - - lanzaboote = { - url = "github:nix-community/lanzaboote"; - # inputs.nixpkgs.follows = "nixpkgs"; + home-manager = { + url = "github:nix-community/home-manager"; + inputs.nixpkgs.follows = "nixpkgs"; }; agenix = { @@ -19,17 +23,16 @@ inputs.nixpkgs.follows = "nixpkgs"; inputs.flake-utils.follows = "flake-utils"; }; - - home-manager = { - url = "github:nix-community/home-manager"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - + flake-utils.url = "github:numtide/flake-utils"; + lanzaboote.url = "github:nix-community/lanzaboote"; hyprland.url = "github:hyprwm/Hyprland"; - nixos-hardware.url = "github:nixos/nixos-hardware"; + disko.url = "github:nix-community/disko"; + nixos-anywhere.url = "github:nix-community/nixos-anywhere"; resume.url = "git+https://git.fainsin.bzh/Laurent/resume"; + projet-intelligence-artificielle-multimedia.url = + "git+https://git.fainsin.bzh/ENSEEIHT/projet-intelligence-artificielle-multimedia"; }; nixConfig = { @@ -42,7 +45,7 @@ }; outputs = { nixpkgs, flake-utils, lanzaboote, agenix, home-manager - , nixos-hardware, ... }@inputs: + , nixos-hardware, disko, ... }@inputs: (flake-utils.lib.eachDefaultSystem (system: let pkgs = nixpkgs.legacyPackages.${system}; @@ -84,6 +87,7 @@ modules = [ ./hosts/hydrogen home-manager.nixosModules.home-manager + disko.nixosModules.default agenix.nixosModules.default lanzaboote.nixosModules.lanzaboote ];