65 lines
1.7 KiB
Nix
65 lines
1.7 KiB
Nix
{ config, pkgs, lib, modulesPath, ... }:
|
|
|
|
let
|
|
sovranSource = builtins.path { path = ../.; name = "sovran-systemsos"; };
|
|
|
|
installerPy = pkgs.writeShellScriptBin "sovran-install" ''
|
|
exec ${pkgs.python3.withPackages (ps: [ ps.pygobject3 ])}/bin/python3 /etc/sovran/installer.py
|
|
'';
|
|
in
|
|
{
|
|
imports = [
|
|
"${modulesPath}/installer/cd-dvd/installation-cd-graphical-gnome.nix"
|
|
./branding.nix
|
|
];
|
|
|
|
image.baseName = lib.mkForce "Sovran_SystemsOS";
|
|
isoImage.splashImage = ./assets/splash-logo.png;
|
|
|
|
services.gnome.gnome-initial-setup.enable = false;
|
|
environment.gnome.excludePackages = with pkgs; [ gnome-tour gnome-user-docs ];
|
|
|
|
security.sudo.wheelNeedsPassword = false;
|
|
users.users.free = {
|
|
isNormalUser = true;
|
|
description = "free";
|
|
extraGroups = [ "networkmanager" "wheel" ];
|
|
initialPassword = "free";
|
|
};
|
|
|
|
services.displayManager.autoLogin.enable = true;
|
|
services.displayManager.autoLogin.user = lib.mkForce "free";
|
|
|
|
nix-bitcoin.generateSecrets = true;
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
installerPy
|
|
(python3.withPackages (ps: [ ps.pygobject3 ]))
|
|
gtk4
|
|
libadwaita
|
|
gobject-introspection
|
|
util-linux
|
|
disko
|
|
parted
|
|
dosfstools
|
|
e2fsprogs
|
|
gptfdisk
|
|
nixos-install-tools
|
|
git
|
|
curl
|
|
];
|
|
|
|
environment.etc."sovran/logo.png".source = ./assets/splash-logo.png;
|
|
environment.etc."sovran/flake".source = sovranSource;
|
|
environment.etc."sovran/installer.py".source = ./installer.py;
|
|
|
|
environment.etc."xdg/autostart/sovran-installer.desktop".text = ''
|
|
[Desktop Entry]
|
|
Type=Application
|
|
Name=Sovran Guided Installer
|
|
Exec=bash -c "DISPLAY=:0 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$(id -u)/bus ${installerPy}/bin/sovran-install"
|
|
Terminal=false
|
|
X-GNOME-Autostart-enabled=true
|
|
'';
|
|
}
|