summaryrefslogtreecommitdiff
path: root/nix_archive/hosts/palm
diff options
context:
space:
mode:
Diffstat (limited to 'nix_archive/hosts/palm')
-rw-r--r--nix_archive/hosts/palm/configuration.nix249
-rw-r--r--nix_archive/hosts/palm/hardware-configuration.nix37
-rw-r--r--nix_archive/hosts/palm/programs.nix17
3 files changed, 303 insertions, 0 deletions
diff --git a/nix_archive/hosts/palm/configuration.nix b/nix_archive/hosts/palm/configuration.nix
new file mode 100644
index 0000000..42cf14c
--- /dev/null
+++ b/nix_archive/hosts/palm/configuration.nix
@@ -0,0 +1,249 @@
+{ config, lib, pkgs, ... }:
+let
+ loc = config.local;
+ colo = loc.scheme;
+ inherit (import ../../nix/settings.nix) disks;
+in {
+ imports = [
+ ./hardware-configuration.nix
+ ../../nix/user.nix
+ ../../nix/system.nix
+ ../../nix/audio.nix
+ ../../nix/bluetooth.nix
+ ../../nix/email.nix
+ ../../nix/intel.nix
+ ../../nix/gaming.nix
+ ../../nix/virtualisation.nix
+ ../../nix/scripts.nix
+ ../../nix/programs/bash.nix
+ ../../nix/programs/nvim.nix
+ ../../nix/programs/sway.nix
+ ../../nix/programs/kitty.nix
+ ../../nix/programs/firefox.nix
+ ../../nix/programs/obs.nix
+ ../../nix/programs/waydroid.nix
+ ../../nix/programs/kdeconnect.nix
+ ./programs.nix
+ ];
+
+ local = rec {
+ font = {
+ name = "Lotion";
+ size = 15;
+ baseline = -2;
+ cell-height-offset = 0;
+ };
+ ui-font = {
+ name = "M+ 2p";
+ size = 11;
+ baseline = 0;
+ cell-height-offset = 0;
+ };
+ emoji-font = {
+ name = "Blobmoji";
+ size = ui-font.size;
+ baseline = 0;
+ cell-height-offset = 0;
+ };
+ scheme = import ../../themes/year_of_snake/snake.nix;
+ starter = {
+ top_padding = 0;
+ picture = ../../themes/year_of_snake/splash.png;
+ width = 64;
+ padding = { top = -3; left = -4; text = 5; };
+ position = "left";
+ header = "";
+ footer = "";
+ footer-offset = 0;
+ };
+ monitors = {
+ monitor1 = "eDP-1";
+ monitor2 = "DP-2";
+ };
+ };
+
+ nix.settings.system-features = [ "gccarch-skylake" ];
+ nixpkgs.hostPlatform = {
+ #gcc.arch = "skylake";
+ #gcc.tune = "skylake";
+ system = "x86_64-linux";
+ };
+ boot.binfmt.emulatedSystems = [ "armv7l-linux" "aarch64-linux" ];
+
+ boot.kernelPackages = pkgs.linuxPackages_latest;
+ boot.loader.systemd-boot.enable = true;
+ boot.kernelParams = [ "mitigations=off" "file_caps=1" ];
+ services.fwupd.enable = true;
+
+ virtualisation.kvmgt = {
+ enable = true;
+ vgpus = {
+ "i915-GVTg_V5_4" = {
+ uuid = [ "2efaf13a-e65a-11ef-84b4-235363f4a8d4" ];
+ };
+ };
+ };
+
+ security.wrappers = {
+ "mount.nfs" = {
+ owner = "root";
+ group = "root";
+ source = "${pkgs.nfs-utils.out}/bin/mount.nfs";
+ setuid = true;
+ };
+ };
+
+ services.thermald.enable = true;
+ services.tlp = {
+ enable = true;
+ settings = {
+ CPU_SCALING_GOVERNOR_ON_AC = "performance";
+ CPU_SCALING_GOVERNOR_ON_BAT = "powersave";
+
+ CPU_ENERGY_PERF_POLICY_ON_BAT = "power";
+ CPU_ENERGY_PERF_POLICY_ON_AC = "performance";
+
+ CPU_MIN_PERF_ON_AC = 0;
+ CPU_MAX_PERF_ON_AC = 100;
+ CPU_MIN_PERF_ON_BAT = 0;
+ CPU_MAX_PERF_ON_BAT = 20;
+
+ START_CHARGE_THRESH_BAT0 = 40;
+ STOP_CHARGE_THRESH_BAT0 = 85;
+ };
+ };
+ programs.light.enable = true;
+
+ networking = {
+ hostName = "palm";
+ nameservers = [
+ "9.9.9.9"
+ "149.112.112.112"
+ "1.1.1.1"
+ "1.0.0.1"
+ ];
+ useDHCP = false;
+ dhcpcd.enable = false;
+ networkmanager = {
+ enable = true;
+ dns = "none";
+ wifi.powersave = true;
+ };
+ firewall = {
+ enable = true;
+ allowedTCPPorts = [];
+ };
+ extraHosts = ''
+ 192.168.1.192 iroha
+ 192.168.1.206 moyo
+ 192.168.1.207 denpa
+ 66.135.26.42 rod
+ 173.62.191.72 boomerang
+ '';
+ };
+ users.users.andrew.extraGroups = [ "networkmanager" ];
+
+ fileSystems."/mnt/nfs/c" = {
+ device = "moyo:/srv/nfs/c";
+ fsType = "nfs4";
+ options = disks.nfs_options;
+ };
+
+ fileSystems."/mnt/nfs/pics" = {
+ device = "moyo:/srv/nfs/pics";
+ fsType = "nfs4";
+ options = disks.nfs_options;
+ };
+
+ environment.systemPackages = with pkgs; [
+ linuxPackages_latest.perf
+ linuxPackages_latest.cpupower
+ (pkgs.writeShellScriptBin "run-sway" ''
+ export WLR_RENDERER=vulkan
+ export WLR_DRM_DEVICES=/dev/dri/card1
+ cd $HOME
+ exec ${pkgs.sway}/bin/sway
+ '')
+ ];
+
+ home-manager.users.andrew = let
+ homeDir = "${config.users.users.andrew.home}";
+ in {
+ programs.kitty = {
+ extraConfig = ''
+ repaint_delay 9
+ input_delay 3
+ '';
+ };
+ wayland.windowManager.sway = let
+ monitor1 = loc.monitors.monitor1;
+ monitor2 = loc.monitors.monitor2;
+ in {
+ checkConfig = false;
+ config = {
+ output = {
+ "${monitor1}" = {
+ mode = "3000x2000@59.999Hz";
+ position = "1024 540";
+ render_bit_depth = "10";
+ allow_tearing = "no";
+ max_render_time = "10";
+ scale = "2";
+ bg = "${../../themes/year_of_snake/wallpaper.png} fit";
+ };
+ "${monitor2}" = {
+ mode = "1024x768@60.004Hz";
+ position = "0 0";
+ render_bit_depth = "10";
+ allow_tearing = "yes";
+ max_render_time = "10";
+ scale = "1";
+ bg = "#${colo.background-alt} solid_color";
+ };
+ };
+ workspaceOutputAssign = [
+ { workspace = "1"; output = "${monitor1}"; }
+ { workspace = "2"; output = "${monitor1}"; }
+ { workspace = "3"; output = "${monitor1}"; }
+ { workspace = "4"; output = "${monitor1}"; }
+ { workspace = "5"; output = "${monitor1}"; }
+ { workspace = "6"; output = "${monitor2}"; }
+ { workspace = "7"; output = "${monitor2}"; }
+ { workspace = "8"; output = "${monitor2}"; }
+ { workspace = "9"; output = "${monitor2}"; }
+ ];
+ keybindings = let
+ mod1 = "Mod1";
+ mod4 = "Mod4";
+ in {
+ "${mod1}+1" = "workspace 1";
+ "${mod1}+2" = "workspace 2";
+ "${mod1}+3" = "workspace 3";
+ "${mod1}+4" = "workspace 4";
+ "${mod1}+5" = "workspace 5";
+ "${mod4}+1" = "workspace 6";
+ "${mod4}+2" = "workspace 7";
+ "${mod4}+3" = "workspace 8";
+ "${mod4}+4" = "workspace 9";
+ "${mod1}+Shift+1" = "move container to workspace 1";
+ "${mod1}+Shift+2" = "move container to workspace 2";
+ "${mod1}+Shift+3" = "move container to workspace 3";
+ "${mod1}+Shift+4" = "move container to workspace 4";
+ "${mod1}+Shift+5" = "move container to workspace 5";
+ "${mod4}+Shift+1" = "move container to workspace 6";
+ "${mod4}+Shift+2" = "move container to workspace 7";
+ "${mod4}+Shift+3" = "move container to workspace 8";
+ "${mod4}+Shift+4" = "move container to workspace 9";
+ "${mod4}+r" = "exec swaymsg -- output ${monitor1} transform 270";
+ "${mod4}+Shift+r" = "exec swaymsg -- output ${monitor1} transform 0";
+ "${mod4}+F1" = "exec swaymsg -- output ${monitor1} bg \\#${colo.background-alt} solid_color";
+ "${mod4}+F2" = "exec swaymsg -- output ${monitor1} bg ${../../themes/year_of_snake/wallpaper.png} fill";
+ };
+ };
+ };
+
+ home.stateVersion = "${config.system.stateVersion}";
+ };
+
+ system.stateVersion = "24.11";
+}
diff --git a/nix_archive/hosts/palm/hardware-configuration.nix b/nix_archive/hosts/palm/hardware-configuration.nix
new file mode 100644
index 0000000..fe5e08d
--- /dev/null
+++ b/nix_archive/hosts/palm/hardware-configuration.nix
@@ -0,0 +1,37 @@
+{ config, lib, pkgs, modulesPath, ... }:
+{
+ imports =
+ [ (modulesPath + "/installer/scan/not-detected.nix")
+ ];
+
+ boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" ];
+ boot.initrd.kernelModules = [ "dm-snapshot" ];
+ boot.kernelModules = [ "kvm-intel" ];
+ boot.extraModulePackages = [ ];
+
+ fileSystems."/" =
+ { device = "/dev/yashinoki-vg0/root";
+ fsType = "ext4";
+ };
+
+ fileSystems."/boot" =
+ { device = "/dev/disk/by-uuid/05A6-59CE";
+ fsType = "vfat";
+ };
+
+ boot.initrd.luks.devices."home" =
+ { device = "/dev/yashinoki-vg0/home";
+ preLVM = false;
+ };
+
+ fileSystems."/home/andrew" =
+ { device = "/dev/mapper/home";
+ fsType = "ext4";
+ };
+
+ swapDevices =
+ [ { device = "/dev/yashinoki-vg0/swap"; }
+ ];
+
+ hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
+}
diff --git a/nix_archive/hosts/palm/programs.nix b/nix_archive/hosts/palm/programs.nix
new file mode 100644
index 0000000..d82e72a
--- /dev/null
+++ b/nix_archive/hosts/palm/programs.nix
@@ -0,0 +1,17 @@
+{ lib, pkgs, ... }: {
+ environment.systemPackages = with pkgs; lib.lists.flatten [
+ (asNeeded "krita" ["krita"])
+ yt-dlp
+ (asNeeded "[wineWowPackages.staging winetricks cabextract]" ["function_grep.pl" "msidb" "msiexec" "notepad" "regedit" "regsvr32" "widl" "wine" "wine-preloader" "wine64" "wine64-preloader" "wineboot" "winebuild" "winecfg" "wineconsole" "winecpp" "winedbg" "winedump" "winefile" "wineg++" "winegcc" "winemaker" "winemine" "winepath" "wineserver" "wmc" "wrc"])
+ (discord.override { withOpenASAR = true; })
+ (asNeeded "imv" ["imv"])
+ (asNeeded "mpv" ["mpv"])
+ #camu
+ #camu-devshell
+ #mauri
+ ];
+ local.scripts.imports = [
+ "battery"
+ "discord-wayland"
+ ];
+}