diff --git a/flake.lock b/flake.lock index 967919b..fa65c01 100644 --- a/flake.lock +++ b/flake.lock @@ -229,27 +229,6 @@ "type": "github" } }, - "jovian-nixos": { - "inputs": { - "nix-github-actions": "nix-github-actions", - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1762951919, - "narHash": "sha256-ma/xMEGf4J6n/RdZFdxXBJUQhP53HVEPQOC6Dp2TrkQ=", - "owner": "Jovian-Experiments", - "repo": "Jovian-NixOS", - "rev": "3d248f6e8f877218dd2573fef8925ac997889922", - "type": "github" - }, - "original": { - "owner": "Jovian-Experiments", - "repo": "Jovian-NixOS", - "type": "github" - } - }, "nix-darwin": { "inputs": { "nixpkgs": [ @@ -271,28 +250,6 @@ "type": "github" } }, - "nix-github-actions": { - "inputs": { - "nixpkgs": [ - "jovian-nixos", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1729697500, - "narHash": "sha256-VFTWrbzDlZyFHHb1AlKRiD/qqCJIripXKiCSFS8fAOY=", - "owner": "zhaofengli", - "repo": "nix-github-actions", - "rev": "e418aeb728b6aa5ca8c5c71974e7159c2df1d8cf", - "type": "github" - }, - "original": { - "owner": "zhaofengli", - "ref": "matrix-name", - "repo": "nix-github-actions", - "type": "github" - } - }, "nix-homebrew": { "inputs": { "brew-src": "brew-src" @@ -396,7 +353,6 @@ "firefox-addons": "firefox-addons", "home-manager": "home-manager", "jetpack-nixos": "jetpack-nixos", - "jovian-nixos": "jovian-nixos", "nix-darwin": "nix-darwin", "nix-homebrew": "nix-homebrew", "nixpkgs": "nixpkgs_2", diff --git a/flake.nix b/flake.nix index 81c0599..52e456a 100644 --- a/flake.nix +++ b/flake.nix @@ -17,13 +17,11 @@ nix-homebrew.url = "github:zhaofengli/nix-homebrew"; disko.url = "github:nix-community/disko"; disko.inputs.nixpkgs.follows = "nixpkgs"; - jovian-nixos.url = "github:Jovian-Experiments/Jovian-NixOS"; - jovian-nixos.inputs.nixpkgs.follows = "nixpkgs"; jetpack-nixos.url = "github:anduril/jetpack-nixos"; jetpack-nixos.inputs.nixpkgs.follows = "nixpkgs"; }; - outputs = inputs@{ self, nix-darwin, nixpkgs, home-manager, nixvim, claude-code, firefox-addons, nix-homebrew, disko, jovian-nixos, jetpack-nixos }: + outputs = inputs@{ self, nix-darwin, nixpkgs, home-manager, nixvim, claude-code, firefox-addons, nix-homebrew, disko, jetpack-nixos }: { darwinConfigurations."macbook" = nix-darwin.lib.darwinSystem { modules = [ @@ -59,16 +57,6 @@ ]; }; - nixosConfigurations."deck" = nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - modules = [ - disko.nixosModules.disko - jovian-nixos.nixosModules.jovian - ./hosts/nixos/deck/system.nix - ./hosts/nixos/deck/disk-config.nix - ]; - }; - nixosConfigurations."jetson" = nixpkgs.lib.nixosSystem { system = "aarch64-linux"; modules = [ @@ -104,12 +92,6 @@ extraSpecialArgs = { inherit claude-code nixvim firefox-addons; }; }; - "yanlin@deck" = home-manager.lib.homeManagerConfiguration { - pkgs = nixpkgs.legacyPackages.x86_64-linux; - modules = [ ./hosts/nixos/deck/home.nix ]; - extraSpecialArgs = { inherit claude-code nixvim firefox-addons; }; - }; - "yanlin@jetson" = home-manager.lib.homeManagerConfiguration { pkgs = nixpkgs.legacyPackages.aarch64-linux; modules = [ ./hosts/nixos/jetson/home.nix ]; diff --git a/hosts/nixos/deck/disk-config.nix b/hosts/nixos/deck/disk-config.nix deleted file mode 100644 index 7314ed2..0000000 --- a/hosts/nixos/deck/disk-config.nix +++ /dev/null @@ -1,47 +0,0 @@ -# Disko configuration for Steam Deck -# Following the partitioning scheme from https://heywoodlh.io/nixos-steamdeck -{ - disko.devices = { - disk = { - main = { - type = "disk"; - device = "/dev/nvme0n1"; - content = { - type = "gpt"; - partitions = { - # EFI System Partition - ESP = { - size = "512M"; - type = "EF00"; - content = { - type = "filesystem"; - format = "vfat"; - mountpoint = "/boot"; - mountOptions = [ "fmask=0077" "dmask=0077" ]; - }; - }; - - # Swap partition - swap = { - size = "8G"; - content = { - type = "swap"; - resumeDevice = true; - }; - }; - - # Root partition - takes remaining space - root = { - size = "100%"; - content = { - type = "filesystem"; - format = "ext4"; - mountpoint = "/"; - }; - }; - }; - }; - }; - }; - }; -} diff --git a/hosts/nixos/deck/hardware-configuration.nix b/hosts/nixos/deck/hardware-configuration.nix deleted file mode 100644 index 316d010..0000000 --- a/hosts/nixos/deck/hardware-configuration.nix +++ /dev/null @@ -1,28 +0,0 @@ -# Do not modify this file! It was generated by ‘nixos-generate-config’ -# and may be overwritten by future invocations. Please make changes -# to /etc/nixos/configuration.nix instead. -{ config, lib, pkgs, modulesPath, ... }: - -{ - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; - - boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "usb_storage" "usbhid" "sd_mod" "sdhci_pci" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; - - # Filesystem and swap configuration managed by disko (see disk-config.nix) - - # Enables DHCP on each ethernet and wireless interface. In case of scripted networking - # (the default) this is the recommended approach. When using systemd-networkd it's - # still possible to use this option, but it's recommended to use it in conjunction - # with explicit per-interface declarations with `networking.interfaces..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.enp4s0f3u1u1c2.useDHCP = lib.mkDefault true; - # networking.interfaces.wlo1.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/hosts/nixos/deck/home.nix b/hosts/nixos/deck/home.nix deleted file mode 100644 index 2abbdc6..0000000 --- a/hosts/nixos/deck/home.nix +++ /dev/null @@ -1,14 +0,0 @@ -{ config, pkgs, ... }: - -{ - # Allow unfree packages in home-manager - nixpkgs.config.allowUnfree = true; - - # Import the common NixOS home configuration - imports = [ - ../home-default.nix - ]; - - home.packages = with pkgs; [ - ]; -} diff --git a/hosts/nixos/deck/system.nix b/hosts/nixos/deck/system.nix deleted file mode 100644 index 89eabc2..0000000 --- a/hosts/nixos/deck/system.nix +++ /dev/null @@ -1,120 +0,0 @@ -{ config, pkgs, lib, ... }: - -{ - imports = [ - ./hardware-configuration.nix - ./disk-config.nix - ../system-default.nix # Common NixOS system configuration - ../../../modules/wireguard.nix - ../../../modules/login-display.nix - ]; - - # Bootloader - standard UEFI setup - boot.loader = { - systemd-boot.enable = true; - systemd-boot.configurationLimit = 50; - efi.canTouchEfiVariables = true; - timeout = 3; - }; - - # Network configuration - networking = { - hostName = "deck"; - networkmanager = { - enable = true; - wifi.powersave = true; - }; - firewall.enable = false; - }; - - # WireGuard VPN configuration - services.wireguard-custom = { - enable = true; - mode = "client"; - clientConfig = { - address = "10.2.2.40/32"; - serverEndpoint = "91.98.84.215:51820"; - serverPublicKey = "46QHjSzAas5g9Hll1SCEu9tbR5owCxXAy6wGOUoPwUM="; - allowedIPs = [ "10.2.2.0/24" ]; # Only route WireGuard network through VPN - }; - }; - - # Hardware support for Steam Deck (AMD APU) - hardware = { - enableRedistributableFirmware = true; - - # Graphics configuration for AMD - # Note: enable32Bit is set by jovian.steam.enable - graphics.enable = true; - - # Bluetooth support - bluetooth = { - enable = true; - powerOnBoot = true; - settings = { - General = { - Enable = "Source,Sink,Media,Socket"; - }; - }; - }; - }; - - # Jovian Steam Deck configuration - jovian = { - hardware.has.amd.gpu = true; # Enables backlight control and early modesetting - - steam = { - enable = true; - autoStart = true; - desktopSession = "gamescope-wayland"; - user = "yanlin"; - }; - devices.steamdeck = { - enable = true; - autoUpdate = true; - }; - steamos = { - useSteamOSConfig = true; # Enable SteamOS optimizations (zram, OOM, sysctl, etc.) - enableBluetoothConfig = true; # SteamOS bluetooth defaults - enableAutoMountUdevRules = true; # Auto-mount SD cards - }; - }; - - # Host-specific SSH configuration - services.openssh = { - settings = { - PermitRootLogin = "no"; - }; - }; - - # Host-specific user configuration - users.users.yanlin = { - extraGroups = [ "networkmanager" "wheel" "video" "audio" "input" ]; - hashedPassword = "$6$kSyaRzAtj8VPcNeX$NsEP6zQAfp6O8YWcolfPRKnhIcJlKu5luZgWqozJAHtbE/gv90KoOOKU7Dt.FnbPB0Ej26jXoBH4X.7y/OLGB1"; - openssh.authorizedKeys.keys = [ - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOzmzq6xXp7KkUfPsFo/4O7AYVCJ1U+GrbD0fB10izMF yanlin@thinkpad" - ]; - }; - - # Host-specific packages - environment.systemPackages = with pkgs; [ - # System utilities - pciutils - usbutils - unzip - - smartmontools # Disk health monitoring (SMART) - ]; - - # Login display with SMART disk health status - services.login-display = { - enable = true; - showSystemInfo = true; - showSmartStatus = true; - smartDrives = { - "/dev/nvme0n1" = "System_SSD"; - }; - showDiskUsage = true; - }; - -} diff --git a/modules/gnome/system.nix b/modules/gnome/system.nix index d9cc4f9..416d61d 100644 --- a/modules/gnome/system.nix +++ b/modules/gnome/system.nix @@ -15,7 +15,7 @@ in enableDisplayManager = mkOption { type = types.bool; default = true; - description = "Enable GDM display manager (conflicts with jovian.steam.autoStart)"; + description = "Enable GDM display manager"; }; }; diff --git a/modules/hyprland/system.nix b/modules/hyprland/system.nix index 1e8d24d..542f712 100644 --- a/modules/hyprland/system.nix +++ b/modules/hyprland/system.nix @@ -11,7 +11,7 @@ in enableDisplayManager = mkOption { type = types.bool; default = true; - description = "Enable greetd display manager (conflicts with jovian.steam.autoStart)"; + description = "Enable greetd display manager"; }; };