From 958063f086e1bfd7d75208dae9339acec33b1942 Mon Sep 17 00:00:00 2001 From: Alex Auvolat Date: Thu, 20 Jul 2023 12:08:08 +0200 Subject: kusanagi with non-persistent home --- nixos/common.nix | 3 ++- nixos/icewm.nix | 1 - nixos/kusanagi.nix | 26 +++++++++++++++++--------- 3 files changed, 19 insertions(+), 11 deletions(-) (limited to 'nixos') diff --git a/nixos/common.nix b/nixos/common.nix index 5a653a6..a3397c1 100644 --- a/nixos/common.nix +++ b/nixos/common.nix @@ -12,7 +12,7 @@ in ]; boot.supportedFilesystems = [ "ntfs" ]; - boot.cleanTmpDir = true; + boot.tmp.cleanOnBoot = true; time.timeZone = "Europe/Paris"; @@ -191,6 +191,7 @@ in inkscape krita mupdf + llpp xournalpp pdfarranger nextcloud-client diff --git a/nixos/icewm.nix b/nixos/icewm.nix index 3e8d81f..cf02cc1 100644 --- a/nixos/icewm.nix +++ b/nixos/icewm.nix @@ -12,7 +12,6 @@ dmenu feh - mupdf acpi netsurf.browser midori diff --git a/nixos/kusanagi.nix b/nixos/kusanagi.nix index 52ba1eb..cf5450c 100644 --- a/nixos/kusanagi.nix +++ b/nixos/kusanagi.nix @@ -3,12 +3,16 @@ # to /etc/nixos/configuration.nix instead. { config, lib, pkgs, modulesPath, ... }: +let + home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/release-23.05.tar.gz"; +in { imports = [ (modulesPath + "/installer/scan/not-detected.nix") ./common.nix ./icewm.nix + (import "${home-manager}/nixos") ]; networking.hostName = "kusanagi"; @@ -37,7 +41,7 @@ fsType = "vfat"; }; - fileSystems."/home" = + fileSystems."/Z" = { device = "kusanagi/nixos/home"; fsType = "zfs"; neededForBoot = true; # because contains password files used below @@ -80,19 +84,23 @@ options = [ "bind" ]; }; - # .cache as tmpfs - fileSystems."/home/lx/.cache" = { - device = "none"; - fsType = "tmpfs"; - options = [ "defaults" "size=4G" "mode=755" "uid=1000" ]; - }; - # ---- immutable user config for tmpfs root ---- users.mutableUsers = false; - users.users.lx.passwordFile = "/home/lx/.password"; + users.users.lx.passwordFile = "/Z/lx/.password"; users.users.lx.uid = 1000; + # ---- no persistent home, use home manager to set everything up ---- + + # nur has to be imported twice, otherwise doesn't work + nixpkgs.config.packageOverrides = pkgs: { + nur = import (builtins.fetchTarball + "https://github.com/nix-community/NUR/archive/master.tar.gz") { + inherit pkgs; + }; + }; + home-manager.users.lx = import ../nixpkgs/kusanagi.nix { inherit pkgs; }; + # ---- nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; -- cgit v1.2.3