diff --git a/flake.lock b/flake.lock index 4afde76..109ed13 100644 --- a/flake.lock +++ b/flake.lock @@ -94,6 +94,26 @@ "type": "indirect" } }, + "nypkgs": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1720792364, + "narHash": "sha256-3AvMMvTKkvtDPlTtBZADrQaIRHjW09EO9uyEZNdHOkw=", + "owner": "yunfachi", + "repo": "nypkgs", + "rev": "209a7be0d39ee9a3f5a726abddcdf79753c4f47e", + "type": "github" + }, + "original": { + "owner": "yunfachi", + "repo": "nypkgs", + "type": "github" + } + }, "plasma-manager": { "inputs": { "home-manager": [ @@ -123,6 +143,7 @@ "home-manager": "home-manager", "jovian": "jovian", "nixpkgs": "nixpkgs_2", + "nypkgs": "nypkgs", "plasma-manager": "plasma-manager" } } diff --git a/flake.nix b/flake.nix index 0550d2e..de17d0e 100644 --- a/flake.nix +++ b/flake.nix @@ -12,20 +12,16 @@ inputs.nixpkgs.follows = "nixpkgs"; inputs.home-manager.follows = "home-manager"; }; + nypkgs = { + url = "github:yunfachi/nypkgs"; + inputs.nixpkgs.follows = "nixpkgs"; }; - outputs = { self, nixpkgs, home-manager, jovian, plasma-manager, ...}: + }; + outputs = { self, nixpkgs, home-manager, jovian, plasma-manager, ...}: let # Different Devices host-computer = "computer-mo"; - host-server = "server"; - host-konsole = "konsole"; - host-steamdeck = "steamdeck"; - user-computer = "mo"; - user-server = "administrator"; - user-konsole = "deck"; - user-steamdeck = "deck"; - lib = nixpkgs.lib; system = "x86_64-linux"; @@ -36,8 +32,8 @@ ${host-computer} = lib.nixosSystem { specialArgs = {inherit user-computer host-computer;}; modules = [ - ./hosts/${host-computer} - ./global/system-imports.nix + ./hosts/${host-computer}/system + ./global/system jovian.nixosModules.jovian home-manager.nixosModules.home-manager { @@ -46,8 +42,8 @@ home-manager.backupFileExtension = "backup"; home-manager.extraSpecialArgs = {inherit pkgs;}; home-manager.users.${user-computer}.imports = [ - ./hosts/${host-computer} - ./global/user-imports.nix + ./hosts/${host-computer}/user + ./global/user ]; home-manager.sharedModules = [ plasma-manager.homeManagerModules.plasma-manager]; } diff --git a/global/system-imports.nix b/global/system-imports.nix deleted file mode 100644 index 107ba10..0000000 --- a/global/system-imports.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ ... }: -{ - imports = - [ - # Packages - ./system-packages/sys.pkg-dev.nix - # Settings - ./system-settings/sys.set-boot.nix - ./system-settings/sys.set-dev.nix - ./system-settings/sys.set-locale.nix - ./system-settings/sys.set-networking.nix - ./system-settings/sys.set-system.nix - ./system-settings/sys.set-updates.nix - ]; -} diff --git a/global/system/default.nix b/global/system/default.nix new file mode 100644 index 0000000..8d19e42 --- /dev/null +++ b/global/system/default.nix @@ -0,0 +1,12 @@ +{ ... }: +{ + imports = [ + ./pkg-dev.nix + ./set-boot.nix + ./set-dev.nix + ./set-locale.nix + ./set-networking.nix + ./set-system.nix + ./set-updates.nix + ]; +} diff --git a/global/system-packages/sys.pkg-dev.nix b/global/system/pkg-dev.nix similarity index 100% rename from global/system-packages/sys.pkg-dev.nix rename to global/system/pkg-dev.nix diff --git a/global/system-settings/sys.set-boot.nix b/global/system/set-boot.nix similarity index 100% rename from global/system-settings/sys.set-boot.nix rename to global/system/set-boot.nix diff --git a/global/system-settings/sys.set-dev.nix b/global/system/set-dev.nix similarity index 100% rename from global/system-settings/sys.set-dev.nix rename to global/system/set-dev.nix diff --git a/global/system-settings/sys.set-locale.nix b/global/system/set-locale.nix similarity index 100% rename from global/system-settings/sys.set-locale.nix rename to global/system/set-locale.nix diff --git a/global/system-settings/sys.set-networking.nix b/global/system/set-networking.nix similarity index 100% rename from global/system-settings/sys.set-networking.nix rename to global/system/set-networking.nix diff --git a/global/system-settings/sys.set-system.nix b/global/system/set-system.nix similarity index 100% rename from global/system-settings/sys.set-system.nix rename to global/system/set-system.nix diff --git a/global/system-settings/sys.set-updates.nix b/global/system/set-updates.nix similarity index 100% rename from global/system-settings/sys.set-updates.nix rename to global/system/set-updates.nix diff --git a/global/user-imports.nix b/global/user-imports.nix deleted file mode 100644 index 03b7a08..0000000 --- a/global/user-imports.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ ... }: - -{ - imports = [ - # Home-Manager Packages - ./user-packages/usr.pkg-dev.nix - # Home-Manager Settings - ./user-settings/usr.set-dev.nix - ./user-settings/usr.set-system.nix - ]; -} diff --git a/global/user/default.nix b/global/user/default.nix new file mode 100644 index 0000000..128cbe6 --- /dev/null +++ b/global/user/default.nix @@ -0,0 +1,8 @@ +{ ... }: +{ + imports = [ + ./pkg-dev.nix + ./set-dev.nix + ./set-system.nix + ]; +} diff --git a/global/user-packages/usr.pkg-dev.nix b/global/user/pkg-dev.nix similarity index 100% rename from global/user-packages/usr.pkg-dev.nix rename to global/user/pkg-dev.nix diff --git a/global/user-settings/usr.set-dev.nix b/global/user/set-dev.nix similarity index 100% rename from global/user-settings/usr.set-dev.nix rename to global/user/set-dev.nix diff --git a/global/user-settings/usr.set-system.nix b/global/user/set-system.nix similarity index 100% rename from global/user-settings/usr.set-system.nix rename to global/user/set-system.nix diff --git a/hosts/computer-mo/sys.pkg-customization.nix b/hosts/computer-mo/sys.pkg-customization.nix deleted file mode 100644 index e6049bd..0000000 --- a/hosts/computer-mo/sys.pkg-customization.nix +++ /dev/null @@ -1,9 +0,0 @@ -{ pkgs, ... }: -{ - environment.systemPackages = - (with pkgs; [ - kde-rounded-corners - neofetch - ibm-plex - ]); -} diff --git a/hosts/computer-mo/sys.pkg-desktop.nix b/hosts/computer-mo/sys.pkg-desktop.nix deleted file mode 100644 index c6dbb10..0000000 --- a/hosts/computer-mo/sys.pkg-desktop.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ ... }: -{ - services.desktopManager.plasma6.enable = true; - services.displayManager.sddm.wayland.enable = true; - services.displayManager.sddm.enable = true; -} diff --git a/hosts/computer-mo/sys.pkg-dev.nix b/hosts/computer-mo/sys.pkg-dev.nix deleted file mode 100644 index 545262b..0000000 --- a/hosts/computer-mo/sys.pkg-dev.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ pkgs, ... }: -{ - environment.systemPackages = - (with pkgs; [ - kdePackages.kate - git - nil - yaml-language-server - ]); -} diff --git a/hosts/computer-mo/sys.pkg-firefox.nix b/hosts/computer-mo/sys.pkg-firefox.nix deleted file mode 100644 index 7ab5fb5..0000000 --- a/hosts/computer-mo/sys.pkg-firefox.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ ... }: -{ - programs.firefox = { - enable = true; - languagePacks = ["de"]; - }; -} diff --git a/hosts/computer-mo/sys.pkg-gaming.nix b/hosts/computer-mo/sys.pkg-gaming.nix deleted file mode 100644 index 44cf0b5..0000000 --- a/hosts/computer-mo/sys.pkg-gaming.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ pkgs, ... }: -{ - environment.systemPackages = - (with pkgs; [ - mangohud - unigine-valley - unigine-heaven - unigine-tropics - ]); -} diff --git a/hosts/computer-mo/sys.pkg-hardware.nix b/hosts/computer-mo/sys.pkg-hardware.nix deleted file mode 100644 index c4a28c6..0000000 --- a/hosts/computer-mo/sys.pkg-hardware.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ pkgs, ... }: -{ - environment.systemPackages = - (with pkgs; [ - pciutils - aha - lact - kdePackages.isoimagewriter - ]); -} diff --git a/hosts/computer-mo/sys.pkg-media.nix b/hosts/computer-mo/sys.pkg-media.nix deleted file mode 100644 index 395a885..0000000 --- a/hosts/computer-mo/sys.pkg-media.nix +++ /dev/null @@ -1,16 +0,0 @@ -{ pkgs, ... }: -{ - environment.systemPackages = - (with pkgs; [ - kdePackages.gwenview - kdePackages.okular - kdePackages.kdenlive - kdePackages.elisa - haruna - krita - ]); -} - - - - diff --git a/hosts/computer-mo/sys.pkg-misc.nix b/hosts/computer-mo/sys.pkg-misc.nix deleted file mode 100644 index bf32362..0000000 --- a/hosts/computer-mo/sys.pkg-misc.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ pkgs, ... }: -{ - environment.systemPackages = - (with pkgs; [ - vesktop - google-chrome - teams-for-linux - kdePackages.kcolorchooser - xwaylandvideobridge - kdePackages.kfind - kdePackages.kcalc - kdePackages.filelight - kdePackages.skanlite - ]); -} diff --git a/hosts/computer-mo/sys.pkg-steam.nix b/hosts/computer-mo/sys.pkg-steam.nix deleted file mode 100644 index bf76fe8..0000000 --- a/hosts/computer-mo/sys.pkg-steam.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ ... }: -{ - jovian.steam = { - enable = true; - }; - - programs.steam = { - enable = true; - }; -} diff --git a/hosts/computer-mo/sys.pkg-system.nix b/hosts/computer-mo/sys.pkg-system.nix deleted file mode 100644 index 30f75a2..0000000 --- a/hosts/computer-mo/sys.pkg-system.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: -{ - environment.systemPackages = - (with pkgs; [ - kdePackages.ksystemlog - kdePackages.partitionmanager - ]); -} diff --git a/hosts/computer-mo/sys.set-boot.nix b/hosts/computer-mo/sys.set-boot.nix deleted file mode 100644 index 254d37d..0000000 --- a/hosts/computer-mo/sys.set-boot.nix +++ /dev/null @@ -1,10 +0,0 @@ -{ ... }: -{ - boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; - boot.extraModprobeConfig = '' - options amdgpu ppfeaturemask=0xFFF7FFFF -''; -} diff --git a/hosts/computer-mo/sys.set-controller.nix b/hosts/computer-mo/sys.set-controller.nix deleted file mode 100644 index 3a5e479..0000000 --- a/hosts/computer-mo/sys.set-controller.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ ... }: -{ - # Ignore Dualsense Touchpad in Desktop - services.udev.extraRules ='' - ACTION=="add|change", KERNEL=="event[0-9]*", ATTRS{name}=="*Wireless Controller Touchpad", ENV{LIBINPUT_IGNORE_DEVICE}="1" - ''; -} diff --git a/hosts/computer-mo/sys.set-desktop.nix b/hosts/computer-mo/sys.set-desktop.nix deleted file mode 100644 index 8a82979..0000000 --- a/hosts/computer-mo/sys.set-desktop.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ user-computer, ... }: -{ - services.xserver.enable = false; - services.displayManager.autoLogin.enable = true; - services.displayManager.autoLogin.user = user-computer; -} diff --git a/hosts/computer-mo/sys.set-filesystems.nix b/hosts/computer-mo/sys.set-filesystems.nix deleted file mode 100644 index 6d1435e..0000000 --- a/hosts/computer-mo/sys.set-filesystems.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ ... }: -{ - fileSystems."/" = - { device = "/dev/disk/by-partlabel/root"; - fsType = "ext4"; - }; - - fileSystems."/boot" = - { device = "/dev/disk/by-partlabel/EFI"; - fsType = "vfat"; - options = [ "fmask=0022" "dmask=0022" ]; - }; - - swapDevices = [ { - device = "/var/lib/swapfile"; - size = 16*1024; - }]; -} diff --git a/hosts/computer-mo/sys.set-hardware.nix b/hosts/computer-mo/sys.set-hardware.nix deleted file mode 100644 index 55e3871..0000000 --- a/hosts/computer-mo/sys.set-hardware.nix +++ /dev/null @@ -1,17 +0,0 @@ -{ lib, config,... }: -{ - hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; - services.fwupd.enable = true; - services.printing.enable = true; - hardware.bluetooth.enable = true; - hardware.bluetooth.powerOnBoot = true; - hardware.pulseaudio.enable = false; - security.rtkit.enable = true; - services.pipewire = { - enable = true; - alsa.enable = true; - alsa.support32Bit = true; - pulse.enable = true; - }; - services.libinput.enable = false; -} diff --git a/hosts/computer-mo/sys.set-hostname.nix b/hosts/computer-mo/sys.set-hostname.nix deleted file mode 100644 index 4a2ddef..0000000 --- a/hosts/computer-mo/sys.set-hostname.nix +++ /dev/null @@ -1,4 +0,0 @@ -{ host-computer, ... }: -{ - networking.hostName = host-computer; -} diff --git a/hosts/computer-mo/sys.set-steam.nix b/hosts/computer-mo/sys.set-steam.nix deleted file mode 100644 index 48df2a9..0000000 --- a/hosts/computer-mo/sys.set-steam.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ user-computer, ... }: -{ - jovian.steam = { - autoStart = false; - user = user-computer; - desktopSession = "plasma"; - }; - - jovian.hardware.has.amd.gpu = true; - jovian.hardware.amd.gpu.enableEarlyModesetting = true; - jovian.steamos.enableBluetoothConfig = true; - - programs.steam = { - remotePlay.openFirewall = true; - dedicatedServer.openFirewall = true; - localNetworkGameTransfers.openFirewall = true; - }; -} diff --git a/hosts/computer-mo/sys.set-systemd.nix b/hosts/computer-mo/sys.set-systemd.nix deleted file mode 100644 index aaa24b9..0000000 --- a/hosts/computer-mo/sys.set-systemd.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ pkgs,... }: -{ - systemd.services.lact = { - enable = true; - description = "AMDGPU Control Daemon"; - after = ["multi-user.target"]; - wantedBy = ["multi-user.target"]; - serviceConfig = { - ExecStart = "${pkgs.lact}/bin/lact daemon"; - }; - }; -} diff --git a/hosts/computer-mo/sys.set-users.nix b/hosts/computer-mo/sys.set-users.nix deleted file mode 100644 index 0e574ce..0000000 --- a/hosts/computer-mo/sys.set-users.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ user-computer, ... }: -{ - users.users.${user-computer} = { - isNormalUser = true; - description = "Mohamed Chrayed"; - extraGroups = [ "networkmanager" "wheel" ]; - }; -} diff --git a/hosts/computer-mo/system-imports.nix b/hosts/computer-mo/system-imports.nix deleted file mode 100644 index 1bd9e0e..0000000 --- a/hosts/computer-mo/system-imports.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ ... }: -{ - imports = - [ - # Packages - ./system-packages/sys.pkg-customization.nix - ./system-packages/sys.pkg-desktop.nix - ./system-packages/sys.pkg-dev.nix - ./system-packages/sys.pkg-firefox.nix - ./system-packages/sys.pkg-gaming.nix - ./system-packages/sys.pkg-hardware.nix - ./system-packages/sys.pkg-media.nix - ./system-packages/sys.pkg-misc.nix - ./system-packages/sys.pkg-steam.nix - ./system-packages/sys.pkg-system.nix - # Settings - ./system-settings/sys.set-boot.nix - ./system-settings/sys.set-controller.nix - ./system-settings/sys.set-desktop.nix - ./system-settings/sys.set-filesystems.nix - ./system-settings/sys.set-hardware.nix - ./system-settings/sys.set-hostname.nix - ./system-settings/sys.set-steam.nix - ./system-settings/sys.set-systemd.nix - ./system-settings/sys.set-users.nix - ]; -} diff --git a/hosts/computer-mo/user-imports.nix b/hosts/computer-mo/user-imports.nix deleted file mode 100644 index f2aec4a..0000000 --- a/hosts/computer-mo/user-imports.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ ... }: - -{ - imports = [ - # Home-Manager Packages - ./user-packages/usr.pkg-desktop.nix - # Home-Manager Settings - ./user-settings/usr.set-customization.nix - ./user-settings/usr.set-dotfiles.nix - ./user-settings/usr.set-desktop.nix - ]; -} diff --git a/hosts/computer-mo/user/default.nix b/hosts/computer-mo/user/default.nix new file mode 100644 index 0000000..76dd1d8 --- /dev/null +++ b/hosts/computer-mo/user/default.nix @@ -0,0 +1,9 @@ +{ ... }: +{ + imports = [ + ./pkg-desktop.nix + ./set-customization.nix + ./set-desktop.nix + ./set-dotfiles.nix + ]; +} diff --git a/hosts/computer-mo/usr.pkg-desktop.nix b/hosts/computer-mo/user/pkg-desktop.nix similarity index 100% rename from hosts/computer-mo/usr.pkg-desktop.nix rename to hosts/computer-mo/user/pkg-desktop.nix diff --git a/hosts/computer-mo/usr.set-customization.nix b/hosts/computer-mo/user/set-customization.nix similarity index 100% rename from hosts/computer-mo/usr.set-customization.nix rename to hosts/computer-mo/user/set-customization.nix diff --git a/hosts/computer-mo/usr.set-desktop.nix b/hosts/computer-mo/user/set-desktop.nix similarity index 100% rename from hosts/computer-mo/usr.set-desktop.nix rename to hosts/computer-mo/user/set-desktop.nix diff --git a/hosts/computer-mo/usr.set-dotfiles.nix b/hosts/computer-mo/user/set-dotfiles.nix similarity index 100% rename from hosts/computer-mo/usr.set-dotfiles.nix rename to hosts/computer-mo/user/set-dotfiles.nix