about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--hosts/default.nix1
-rw-r--r--hosts/luna/default.nix35
-rw-r--r--hosts/luna/hardware.nix59
-rw-r--r--hosts/luna/home.nix37
4 files changed, 132 insertions, 0 deletions
diff --git a/hosts/default.nix b/hosts/default.nix
index 1430bbb..30fef61 100644
--- a/hosts/default.nix
+++ b/hosts/default.nix
@@ -2,6 +2,7 @@
 let
   hosts = [
     { hostname = "phobos"; system = "x86_64-linux"; }
+    { hostname = "luna"; system = "x86_64-linux"; }
     { hostname = "vm"; system = "x86_64-linux"; }
   ];
 
diff --git a/hosts/luna/default.nix b/hosts/luna/default.nix
new file mode 100644
index 0000000..c63c041
--- /dev/null
+++ b/hosts/luna/default.nix
@@ -0,0 +1,35 @@
+# Edit this configuration file to define what should be installed on
+# your system.  Help is available in the configuration.nix(5) man page
+# and in the NixOS manual (accessible by running ‘nixos-help’).
+
+{ config, pkgs, lib, secrets, hostname, inputs, user, ... }: {
+
+  imports = [
+    # Include the results of the hardware scan.
+    ./hardware.nix
+  ];
+
+  services = {
+    # Configure keymap in X11
+    xserver.layout = "gb";
+    fstrim.enable = true;
+  };
+
+  # Pick only one of the below networking options.
+  networking = {
+    wireless = {
+      enable = true; # Enables wireless support via wpa_supplicant.
+      networks = secrets.wifi;
+    };
+    # networkmanager.enable = true;  # Easiest to use and most distros use this by default.
+    # Configure network proxy if necessary
+    # proxy.default = "http://user:password@proxy:port/";
+    # proxy.noProxy = "127.0.0.1,localhost,internal.domain";
+  };
+
+  environment.systemPackages = with pkgs;
+    [
+
+    ];
+}
+
diff --git a/hosts/luna/hardware.nix b/hosts/luna/hardware.nix
new file mode 100644
index 0000000..ce34029
--- /dev/null
+++ b/hosts/luna/hardware.nix
@@ -0,0 +1,59 @@
+{ config, lib, pkgs, modulesPath, ... }:
+let
+  powerMode = "powersave";
+in
+{
+  imports = [ ];
+
+  boot = {
+    initrd = {
+      availableKernelModules = [ "xhci_pci" "usb_storage" "sd_mod" "sdhci_acpi" ];
+      kernelModules = [ ];
+    };
+    kernelModules = [ "kvm_intel" ];
+    extraModulePackages = [ ];
+    kernelParams = [ "net.ifnames=0" "biosdevname=0" "iomem=relaxed" ];
+  };
+
+  fileSystems."/boot" = {
+    device = "/dev/disk/by-uuid/71B3-0F04";
+    fsType = "vfat";
+  };
+
+  fileSystems."/" = {
+    device = "/dev/disk/by-uuid/af0f88f6-d4db-471e-b5b7-2c0a1c314c23";
+    fsType = "btrfs";
+    options = [ "subvol=root compress-force=zstd noatime" ];
+  };
+
+  fileSystems."/nix" = {
+    device = "/dev/disk/by-uuid/af0f88f6-d4db-471e-b5b7-2c0a1c314c23";
+    fsType = "btrfs";
+    options = [ "subvol=nix compress-force=zstd noatime" ];
+  };
+
+  fileSystems."/home" = {
+    device = "/dev/disk/by-uuid/d7d4ebea-7c4b-4b1b-afdf-8b39f686276e";
+    fsType = "btrfs";
+    options = [ "subvol=home compress-force=zstd" ];
+  };
+
+  swapDevices = [ ];
+
+  powerManagement.cpuFreqGovernor = powerMode;
+
+  services.xserver = {
+    videoDrivers = [ "intel" ];
+
+    # Enable touchpad support (enabled default in most desktopManager).
+    libinput.enable = true;
+  };
+
+  hardware = {
+    opengl = {
+      enable = true;
+      driSupport = true;
+    };
+  };
+
+}
diff --git a/hosts/luna/home.nix b/hosts/luna/home.nix
new file mode 100644
index 0000000..2198b63
--- /dev/null
+++ b/hosts/luna/home.nix
@@ -0,0 +1,37 @@
+{ config, lib, pkgs, inputs, user, hostname, secrets, ... }:
+{
+  home.packages = with pkgs; [
+    #minecraft
+    #jetbrains.idea-community
+    calibre
+    qtcreator
+    custom.anime-downloader
+    custom.adl
+    custom.trackma
+    custom.kindlegen
+    kcc
+  ];
+
+  xdg.configFile."dwmbar/config".text = ''
+    #!/bin/sh
+
+    # What modules, in what order
+    MODULES="weather wifi internet volume ram_perc cpuload cputemp battery date time"
+
+    # Modules that require an active internet connection
+    ONLINE_MODULES="weather internet"
+
+    # Delay between showing the status bar
+    DELAY="0.05"
+
+    # Where the custom modules are stored
+    CUSTOM_DIR="/home/$USER/.config/dwmbar/modules/custom/"
+
+    # Separator between modules
+    SEPARATOR=" | "
+
+    # Padding at the end and beggining of the status bar
+    RIGHT_PADDING=" "
+    LEFT_PADDING=" "
+  '';
+}