hosts: init graphical-installer

This is my personalized graphical installer to make installing NixOS a
little easier with all of my comfy config. Though, this won't be seeing
a release as the resulting file is over GitHub's asset size limit of
2GB. Man...
This commit is contained in:
Gabriel Arazas 2022-03-01 23:07:56 +08:00
parent 0dbea86e46
commit d225257f8d
2 changed files with 64 additions and 0 deletions

View File

@ -0,0 +1,15 @@
= graphical-installer, the personalized graphical installer for NixOS
My other personalized NixOS installation medium.
Similar to `bootstrap`, it isn't supposed to be used as a daily system (if you are, you're still pretty weird :/).
This is based from the GNOME graphical installer from nixpkgs.
Also uses my link:../../modules/nixos/themes/a-happy-gnome[A happy GNOME theme].
To make use of this, you can generate an ISO through link:https://github.com/nix-community/nixos-generators[nixos-generators]. footnote:[You can also try this for other hosts as well for MORE BEEFY OFFLINE INSTALLATION MEDIUM!]
[source, shell]
----
nix run github:nix-community/nixos-generators -- --flake .#graphical-installer --format iso --out-link result
----
With the ISO built, you can now use it for yourself for whatever reason.

View File

@ -0,0 +1,49 @@
{ self, lib, config, pkgs, inputs, modulesPath, ... }:
{
imports = [
"${modulesPath}/installer/cd-dvd/installation-cd-graphical-base.nix"
(lib.getUser "nixos" "nixos")
];
networking.hostName = "graphical-installer";
boot.loader.systemd-boot.enable = true;
boot.supportedFilesystems = lib.mkForce [ "btrfs" "reiserfs" "vfat" "f2fs" "xfs" "ntfs" "cifs" ];
users.users.root.password = "";
isoImage = {
isoBaseName = config.networking.hostName;
contents = [{
source = self;
target = "/bootstrap/";
}];
storeContents = [
self.devShell.${config.nixpkgs.system}
] ++ builtins.attrValues inputs;
};
profiles = {
desktop = {
enable = true;
fonts.enable = true;
};
dev = {
enable = true;
shell.enable = true;
neovim.enable = true;
};
};
themes.themes.a-happy-gnome.enable = true;
services.xserver.displayManager = {
gdm = {
enable = true;
autoSuspend = false;
};
autoLogin = {
enable = true;
user = "nixos";
};
};
}