nix-config/containers/gui.nix

75 lines
1.6 KiB
Nix
Raw Normal View History

{ home-manager, stylix, ... }:
2023-06-13 00:09:57 +02:00
let
VARIABLES = import ../src/variables.nix;
in
{
containers.gui = {
privateNetwork = true;
ephemeral = true;
bindMounts = {
"/mnt" = {
hostPath = "/home/${VARIABLES.username}/containers/gui";
isReadOnly = false;
};
waylandDisplay = rec {
hostPath = "/run/user/1000";
mountPoint = hostPath;
};
x11Display = rec {
hostPath = "/tmp/.X11-unix";
mountPoint = hostPath;
isReadOnly = true;
};
2023-06-13 00:09:57 +02:00
};
2023-06-13 15:06:39 +02:00
config = { pkgs, ... }: {
2023-06-13 00:09:57 +02:00
imports = [
home-manager.nixosModules.home-manager
stylix.nixosModules.stylix
./common/wayland.nix
2023-06-16 20:05:23 +02:00
../modules/fonts.nix
../modules/stylix.nix
2023-06-13 00:09:57 +02:00
];
environment.systemPackages = with pkgs; [
2023-06-16 13:31:34 +02:00
audacity # Audio editing
2023-06-13 00:09:57 +02:00
gimp # Video editing
anki # Spaced repetition
sqlitebrowser # SQL
kanjidraw # Kanji draw
kitty # TODO: import common module
libreoffice
2023-06-13 00:09:57 +02:00
];
users = {
mutableUsers = false;
allowNoPasswordLogin = true;
users.user = {
isNormalUser = true;
home = "/home/user";
};
};
#home-manager.sharedModules = [{
#}];
home-manager.users.user = { pkgs, ... }: {
home.packages = [ pkgs.atool pkgs.httpie ];
home.stateVersion = VARIABLES.stateVersion;
};
environment = {
variables = { TERM = "xterm-kitty"; };
defaultPackages = [ ];
};
# environment.systemPackages = with pkgs; [ kitty ];
system.stateVersion = VARIABLES.stateVersion;
};
};
}