create bootable nixos system
This commit is contained in:
37
flake.lock
generated
37
flake.lock
generated
@@ -1,5 +1,41 @@
|
||||
{
|
||||
"nodes": {
|
||||
"nixlib": {
|
||||
"locked": {
|
||||
"lastModified": 1736643958,
|
||||
"narHash": "sha256-tmpqTSWVRJVhpvfSN9KXBvKEXplrwKnSZNAoNPf/S/s=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"rev": "1418bc28a52126761c02dd3d89b2d8ca0f521181",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixos-generators": {
|
||||
"inputs": {
|
||||
"nixlib": "nixlib",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1751903740,
|
||||
"narHash": "sha256-PeSkNMvkpEvts+9DjFiop1iT2JuBpyknmBUs0Un0a4I=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixos-generators",
|
||||
"rev": "032decf9db65efed428afd2fa39d80f7089085eb",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nixos-generators",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1751637120,
|
||||
@@ -17,6 +53,7 @@
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"nixos-generators": "nixos-generators",
|
||||
"nixpkgs": "nixpkgs"
|
||||
}
|
||||
}
|
||||
|
||||
34
flake.nix
34
flake.nix
@@ -3,9 +3,13 @@
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "nixpkgs/nixos-unstable";
|
||||
nixos-generators = {
|
||||
url = "github:nix-community/nixos-generators";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
|
||||
outputs = { self, nixpkgs }:
|
||||
outputs = { self, nixpkgs, nixos-generators, ... }:
|
||||
let
|
||||
lastModifiedDate = self.lastModifiedDate or self.lastModified or "19700101";
|
||||
version = builtins.substring 0 8 lastModifiedDate;
|
||||
@@ -25,6 +29,34 @@
|
||||
src = ./client;
|
||||
vendorHash = null;
|
||||
};
|
||||
boot-env-iso = nixos-generators.nixosGenerate {
|
||||
inherit system;
|
||||
format = "iso";
|
||||
modules = [
|
||||
({modulesPath, ...}: {
|
||||
imports = [
|
||||
(modulesPath + "/profiles/minimal.nix")
|
||||
(modulesPath + "/profiles/base.nix")
|
||||
];
|
||||
|
||||
# Disable unneeded features
|
||||
## boot.loader.grub.enable = true;
|
||||
## boot.loader.grub.device = "nodev";
|
||||
documentation.enable = false;
|
||||
fonts.fontconfig.enable = false;
|
||||
services.udisks2.enable = false;
|
||||
|
||||
services.getty.autologinUser = "root";
|
||||
|
||||
environment.etc."profile.local".text = ''
|
||||
# Minimal shell prompt
|
||||
echo "It works!"
|
||||
'';
|
||||
|
||||
isoImage.squashfsCompression = "gzip -Xcompression-level 1";
|
||||
})
|
||||
];
|
||||
};
|
||||
});
|
||||
|
||||
devShells = forAllSystems (system:
|
||||
|
||||
Reference in New Issue
Block a user