53 lines
1.5 KiB
Nix
53 lines
1.5 KiB
Nix
{ config, lib, pkgs, modulesPath, nix-flatpak, plasma-manager, ... }:
|
|
|
|
let
|
|
cfg = config.lumpiasty.users;
|
|
mkHome = import ../../lib/mkHome.nix {
|
|
inherit lib;
|
|
inherit nix-flatpak;
|
|
inherit plasma-manager;
|
|
};
|
|
mkUser = import ../../lib/mkUser.nix { inherit lib; };
|
|
in
|
|
{
|
|
options.lumpiasty.users = {
|
|
user = lib.mkEnableOption "Create user \"user\"";
|
|
drugi = lib.mkEnableOption "Create user \"drugi\"";
|
|
};
|
|
|
|
|
|
config = {
|
|
# Install system-wide docker because rootless causes issues with binfmt
|
|
virtualisation.docker.enable = config.lumpiasty.pc;
|
|
|
|
# Binfmt for aarch64 emulation
|
|
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
|
|
boot.binfmt.preferStaticEmulators = true;
|
|
# Pass the binary to the interpreter as an open file descriptor, instead of a path.
|
|
# Fixes issue inside containers.
|
|
boot.binfmt.registrations.aarch64-linux.openBinary = true;
|
|
boot.binfmt.registrations.aarch64-linux.fixBinary = true;
|
|
|
|
# Flatpak
|
|
services.flatpak.enable = true;
|
|
|
|
# Users
|
|
users.mutableUsers = false;
|
|
|
|
home-manager.useGlobalPkgs = true;
|
|
home-manager.useUserPackages = true;
|
|
|
|
# User user
|
|
users.users.user = lib.mkMerge [
|
|
(mkUser cfg.user ../../users/user/config.nix)
|
|
{
|
|
extraGroups = lib.mkIf config.lumpiasty.pc [ "docker" ];
|
|
}
|
|
];
|
|
home-manager.users.user = mkHome cfg.user ../../users/user/home.nix;
|
|
|
|
# User drugi
|
|
users.users.drugi = mkUser cfg.drugi ../../users/drugi/config.nix;
|
|
home-manager.users.drugi = mkHome cfg.drugi ../../users/drugi/home.nix;
|
|
};
|
|
} |