diff --git a/flake.nix b/flake.nix
index afc16b4..33e2b6b 100755
--- a/flake.nix
+++ b/flake.nix
@@ -337,6 +337,29 @@
};
};
+ Arc = nixpkgs.lib.nixosSystem {
+ system = "x86_64-linux";
+ modules = [
+ ./host/Arc/configuration.nix
+ ./hardware-configuration.nix
+ home-manager.nixosModules.home-manager
+ lix-module.nixosModules.default
+ (
+ { ... }:
+ {
+ nix = {
+ registry.nixpkgs.flake = nixpkgs;
+ nixPath = [ "nixpkgs=${nixpkgs.outPath}" ];
+ };
+ }
+ )
+ ];
+ specialArgs = {
+ inherit home-manager;
+ inherit nixpkgs-stable;
+ };
+ };
+
Rory-portable = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
diff --git a/host/Arc/configuration.nix b/host/Arc/configuration.nix
index 7e17758..5ff36b2 100644
--- a/host/Arc/configuration.nix
+++ b/host/Arc/configuration.nix
@@ -1,7 +1,9 @@
-{
+args@{
config,
pkgs,
lib,
+ nhekoSrc,
+ mtxclientSrc,
...
}:
@@ -9,10 +11,13 @@
imports = [
# base imports
../../modules/base-client.nix
- ../../packages/vim.nix
+ ../../modules/packages/vim.nix
../../modules/users/Arci.nix
+ # hardware-specific imports
./optional/hardware-specific/nvidia.nix
+
+ #./optional/gui/x11.nix
./optional/gui/wayland.nix
];
@@ -38,6 +43,19 @@
ZSH_DISABLE_COMPFIX = "true";
};
+ services.udev.extraRules = ''
+ #SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0664", GROUP="users"
+ # SDP protocol
+ KERNEL=="hidraw*", ATTRS{idVendor}=="1fc9", MODE="0666"
+ ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="1fc9", MODE="0666"
+ ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="0d28", MODE="0666"
+ # Flashloader
+ KERNEL=="hidraw*", ATTRS{idVendor}=="15a2", MODE="0666"
+ # Controller
+ KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="18d1", MODE="0666"
+ SUBSYSTEMS=="usb", ATTRS{idVendor}=="18d1", ATTRS{idProduct}=="9400", MODE="0660", TAG+="uaccess"
+ '';
+
networking = {
hostName = "Arc";
networkmanager.enable = true;
@@ -48,14 +66,6 @@
# allowedUDPPorts = [ ... ];
};
- interfaces.enp34s0.ipv4.addresses = [
- {
- address = "192.168.0.10";
- prefixLength = 24;
- }
- ];
-
- defaultGateway = "192.168.0.1";
#useDHCP = true; # Doesn't work with NetworkManager, investigate
};
@@ -88,7 +98,7 @@
jack.enable = true;
alsa.enable = true;
};
-
+
desktopManager.plasma6.enable = true;
};
@@ -111,10 +121,12 @@
gimp
# - Languages
+ #dotnet-sdk_8
dotnetCorePackages.sdk_9_0
#games
osu-lazer-bin
+ #steam
steam-run
steam-acf
@@ -124,11 +136,13 @@
nemo
file-roller
firefox-bin
- ungoogled-chromium # needed for Rider in order to debug WASM
+ ungoogled-chromium #needed for Rider in order to debug WASM
unrar-wrapper
mangohud
prismlauncher
+ vesktop
+ mindustry
];
programs.steam = {
@@ -147,7 +161,7 @@
extraPortals = with pkgs; [
#xdg-desktop-portal-gtk
xdg-desktop-portal-xapp
- # (callPackage ../../packages/xdg-desktop-portal-gtk.nix { })
+ # (callPackage ../../modules/packages/xdg-desktop-portal-gtk.nix { })
];
config = {
common = {
@@ -164,19 +178,16 @@
};
fonts = {
packages = with pkgs; [
+ #(nerdfonts.override { fonts = [ "JetBrainsMono" ]; })
nerd-fonts.jetbrains-mono
noto-fonts-monochrome-emoji
];
- fontconfig.defaultFonts.monospace = with pkgs; [
- "JetBrainsMonoNL Nerd Font,JetBrainsMonoNL NF:style=Regular"
- ];
- fontconfig.defaultFonts.sansSerif = with pkgs; [
- "JetBrainsMonoNL Nerd Font,JetBrainsMonoNL NF:style=Regular"
- ];
- fontconfig.defaultFonts.serif = with pkgs; [
- "JetBrainsMonoNL Nerd Font,JetBrainsMonoNL NF:style=Regular"
- ];
+ fontconfig.defaultFonts.monospace = with pkgs; [ "JetBrainsMonoNL Nerd Font,JetBrainsMonoNL NF:style=Regular" ];
+ fontconfig.defaultFonts.sansSerif = with pkgs; [ "JetBrainsMonoNL Nerd Font,JetBrainsMonoNL NF:style=Regular" ];
+ fontconfig.defaultFonts.serif = with pkgs; [ "JetBrainsMonoNL Nerd Font,JetBrainsMonoNL NF:style=Regular" ];
fontconfig.defaultFonts.emoji = with pkgs; [ "freefont" ];
+ enableDefaultPackages = lib.mkForce false;
+ enableGhostscriptFonts = lib.mkForce false;
};
nixpkgs = {
@@ -201,6 +212,12 @@
programs.dconf.enable = true;
+ #networking.wireguard.interfaces = {
+ # wg-KP-Ran = {
+
+ #};
+ # };
+
virtualisation.libvirtd.enable = true;
programs.virt-manager.enable = true;
@@ -223,6 +240,10 @@
services.pcscd.enable = true;
virtualisation.vmVariant = {
+ users = {
+ mutableUsers = false;
+ users.Rory.password = "password";
+ };
networking.interfaces.enp34s0 = lib.mkForce { };
};
diff --git a/host/Arc/hacks/drm-amd-3437.patch b/host/Arc/hacks/drm-amd-3437.patch
new file mode 100644
index 0000000..1867762
--- /dev/null
+++ b/host/Arc/hacks/drm-amd-3437.patch
@@ -0,0 +1,13 @@
+diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
+index c556c8b653fa..272ad5e4a328 100644
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
+@@ -180,7 +180,7 @@ void amdgpu_bo_placement_from_domain(struct amdgpu_bo *abo, u32 domain)
+ * When GTT is just an alternative to VRAM make sure that we
+ * only use it as fallback and still try to fill up VRAM first.
+ */
+- if (domain & abo->preferred_domains & AMDGPU_GEM_DOMAIN_VRAM)
++ if (domain & abo->preferred_domains & AMDGPU_GEM_DOMAIN_VRAM && !(adev->flags & AMD_IS_APU))
+ places[c].flags |= TTM_PL_FLAG_FALLBACK;
+ c++;
+ }
\ No newline at end of file
|