Add configuration for gamepc

This commit is contained in:
Pim Kunis 2024-11-07 20:47:40 +01:00
parent d3684cdd1f
commit a58aa96a60
8 changed files with 4929 additions and 32 deletions

View file

@ -1,3 +1,4 @@
{
sue = import ./sue;
gamepc = import ./gamepc;
}

View file

@ -0,0 +1,79 @@
{lib, ...}: {
config = {
pim = {
cinnamon.enable = true;
};
facter.reportPath = ./facter.json;
networking.hostName = "gamepc";
boot = {
loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
};
};
disko.devices.disk = lib.genAttrs ["0" "1"] (name: {
type = "disk";
device = "/dev/nvme${name}n1";
content = {
type = "gpt";
partitions = {
ESP = {
size = "500M";
type = "EF00";
content = {
type = "mdraid";
name = "boot";
};
};
mdadm = {
size = "100%";
content = {
type = "mdraid";
name = "raid0";
};
};
};
};
});
disko.devices.mdadm = {
boot = {
type = "mdadm";
level = 0;
# metadata = "1.0";
content = {
type = "filesystem";
format = "vfat";
mountpoint = "/boot";
};
};
raid0 = {
type = "mdadm";
level = 0;
content = {
type = "gpt";
partitions = {
primary = {
end = "-1G";
content = {
type = "filesystem";
format = "ext4";
mountpoint = "/";
};
};
swap = {
size = "100%";
content = {
type = "swap";
};
};
};
};
};
};
};
}

View file

@ -0,0 +1,4 @@
{
nixosModule = import ./configuration.nix;
homeManagerModule = {...}: {};
}

4792
machines/gamepc/facter.json Normal file

File diff suppressed because it is too large Load diff

13
nixos/cinnamon.nix Normal file
View file

@ -0,0 +1,13 @@
{lib, ...}: {
options.pim.cinnamon.enable = lib.mkEnableOption "cinnamon";
config = {
services = {
displayManager.defaultSession = "cinnamon";
libinput.enable = true;
xserver = {
desktopManager.cinnamon.enable = true;
displayManager.lightdm.enable = true;
};
};
};
}

View file

@ -10,6 +10,7 @@
imports = [
inputs.home-manager.nixosModules.home-manager
inputs.nixos-facter-modules.nixosModules.facter
inputs.disko.nixosModules.disko
./lanzaboote.nix
./tidal.nix
./sops.nix
@ -18,6 +19,7 @@
./gnome.nix
./tailscale.nix
./compliance.nix
./cinnamon.nix
];
time.timeZone = "Europe/Amsterdam";
@ -25,13 +27,7 @@
programs.ssh.startAgent = true;
services = {
gnome.gnome-keyring.enable = lib.mkForce false;
xserver = {
enable = true;
displayManager.gdm = {enable = true;};
excludePackages = with pkgs; [xterm];
};
xserver.enable = true;
printing = {
enable = true;

View file

@ -9,7 +9,15 @@ in {
options.pim.gnome.enable = lib.mkEnableOption "gnome";
config = lib.mkIf cfg.enable {
services.xserver.desktopManager.gnome.enable = true;
services = {
gnome.gnome-keyring.enable = lib.mkForce false;
xserver = {
desktopManager.gnome.enable = true;
displayManager.gdm.enable = true;
excludePackages = [pkgs.xterm];
};
};
environment = {
systemPackages =

View file

@ -10,34 +10,38 @@ in {
imports = [inputs.stylix.nixosModules.stylix];
options.pim.stylix.enable = lib.mkEnableOption "stylix";
config = lib.mkIf cfg.enable {
stylix = {
enable = true;
base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-medium.yaml";
image = "${inputs.nixos-artwork}/wallpapers/nix-wallpaper-binary-blue.png";
config = {
stylix = lib.mkMerge [
{
image = "${inputs.nixos-artwork}/wallpapers/nix-wallpaper-binary-blue.png";
}
(lib.mkIf cfg.enable {
enable = true;
base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-medium.yaml";
cursor = {
package = pkgs.bibata-cursors;
name = "Bibata-Modern-Classic";
size = 28;
};
fonts = {
monospace = {
package = pkgs.nerdfonts.override {fonts = ["JetBrainsMono"];};
name = "JetBrainsMono Nerd Font Mono";
cursor = {
package = pkgs.bibata-cursors;
name = "Bibata-Modern-Classic";
size = 28;
};
sansSerif = {
package = pkgs.dejavu_fonts;
name = "DejaVu Sans";
};
fonts = {
monospace = {
package = pkgs.nerdfonts.override {fonts = ["JetBrainsMono"];};
name = "JetBrainsMono Nerd Font Mono";
};
serif = {
package = pkgs.dejavu_fonts;
name = "DejaVu Serif";
sansSerif = {
package = pkgs.dejavu_fonts;
name = "DejaVu Sans";
};
serif = {
package = pkgs.dejavu_fonts;
name = "DejaVu Serif";
};
};
};
};
})
];
};
}