summaryrefslogtreecommitdiff
path: root/hosts/bean/iso.nix
diff options
context:
space:
mode:
Diffstat (limited to 'hosts/bean/iso.nix')
-rw-r--r--hosts/bean/iso.nix71
1 files changed, 71 insertions, 0 deletions
diff --git a/hosts/bean/iso.nix b/hosts/bean/iso.nix
new file mode 100644
index 0000000..64df018
--- /dev/null
+++ b/hosts/bean/iso.nix
@@ -0,0 +1,71 @@
+{ modulesPath, lib, tlib, config, pkgs, ... }:
+
+let
+ inherit (lib.attrsets)
+ mergeAttrsList;
+ inherit (builtins)
+ map;
+
+ mkThinShim = tlib.mkThinShim pkgs;
+
+ shimmedPackages = [
+ "wesnoth"
+ "luanti"
+ "superTuxKart"
+ "mindustry"
+ "shattered-pixel-dungeon"
+ "bzflag"
+ "teeworlds"
+ "xonotic-glx"
+ "taisei"
+ "unvanquished"
+ "zeroad"
+ ];
+in
+rec {
+ imports = [
+ (modulesPath + "/installer/cd-dvd/iso-image.nix")
+ ];
+
+ isoImage = {
+ makeBiosBootable = true;
+ makeEfiBootable = true;
+ makeUsbBootable = true;
+
+ isoBaseName = lib.mkImageMediaOverride "sprout";
+
+ prependToMenuLabel = "Bean sprout (";
+ appendToMenuLabel = ")";
+ };
+
+ users.users.bean = {
+ description = "Sean Bean";
+ isNormalUser = true;
+ homeMode = "755";
+ extraGroups = [
+ "disk" "cdrom"
+ "audio" "video"
+ "lp" "networkmanager"
+ ];
+ initialPassword = "boromir";
+ };
+ users.users.root.initialPassword = "allalikeallalike";
+
+ services.getty.autologinUser = "bean";
+ services.getty.helpLine = ''
+ As you can see, you are automatically logged in to the "bean" user.
+ Run `startx' to obtain a graphical session.
+
+ The password for bean is: ${users.users.pod.initialPassword}
+ The password for root is: ${users.users.root.initialPassword}
+ '';
+
+ nixpkgs.overlays = [
+ (final: prev:
+ mergeAttrsList
+ (map (pname: {
+ "${pname}" = (mkThinShim prev.${pname} "nixpkgs#${pname}");
+ })
+ shimmedPackages))
+ ];
+}