summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFuwn <[email protected]>2024-08-30 16:40:58 -0700
committerFuwn <[email protected]>2024-08-30 16:40:58 -0700
commit52306bb5f72d31012e47cdc9735836f34129a2ec (patch)
tree8ff9f9a55485c71b25fe85fc46de6d780c6e0fed
parentupdate (diff)
downloadnixos-config-52306bb5f72d31012e47cdc9735836f34129a2ec.tar.xz
nixos-config-52306bb5f72d31012e47cdc9735836f34129a2ec.zip
update
-rw-r--r--home/ebisu/fortune/desktop/wayland/hyprland/hyprland/environment.nix70
-rw-r--r--modules/default.nix2
-rw-r--r--modules/environment/default.nix4
-rw-r--r--modules/environment/system-packages/default.nix (renamed from modules/environment/system-packages.nix)7
-rw-r--r--modules/environment/system-packages/gtk.nix8
-rw-r--r--modules/environment/system-packages/usb.nix8
-rw-r--r--modules/environment/system-packages/vulkan.nix8
-rw-r--r--modules/environment/variables.nix90
-rw-r--r--modules/hardware/graphics.nix7
-rw-r--r--modules/nix.nix8
-rw-r--r--modules/programs/default.nix20
-rw-r--r--modules/programs/gnupg.nix16
-rw-r--r--modules/programs/hyprland.nix8
-rw-r--r--modules/programs/nh.nix10
14 files changed, 152 insertions, 114 deletions
diff --git a/home/ebisu/fortune/desktop/wayland/hyprland/hyprland/environment.nix b/home/ebisu/fortune/desktop/wayland/hyprland/hyprland/environment.nix
index 73690ac..252b53a 100644
--- a/home/ebisu/fortune/desktop/wayland/hyprland/hyprland/environment.nix
+++ b/home/ebisu/fortune/desktop/wayland/hyprland/hyprland/environment.nix
@@ -1,80 +1,16 @@
-_:
-let cursorSize = "18"; in
+let
+ cursorSize = "18";
+in
{
wayland.windowManager.hyprland.settings.env = [
- # Proton
- "PROTON_ENABLE_NGX_UPDATER, 1"
-
# Cursor
"XCURSOR_SIZE, ${cursorSize}"
"HYPRCURSOR_SIZE, ${cursorSize}"
"HYPERCURSOR_THEME, Bibata-Modern-Ice" # WhiteSur-cursors
"XCURSOR_THEME, Bibata-Modern-Ice"
- # Wayland & Xwayland
- "GDK_BACKEND, wayland,x11,*"
- "SDL_VIDEODRIVER, wayland"
- "CLUTTER_BACKEND, wayland"
- "XWAYLAND_NO_GLAMOR, 1" # Gamescope
-
- # Nvidia
- "LIBVA_DRIVER_NAME, nvidia"
- "GBM_BACKEND, nvidia-drm"
- "__GLX_VENDOR_LIBRARY_NAME, nvidia"
- "__VK_LAYER_NV_optimus, NVIDIA_only"
- "__NV_PRIME_RENDER_OFFLOAD, 1"
- "NVD_BACKEND, direct"
-
- # OpenGL
- "__GL_GSYNC_ALLOWED, 1"
- "__GL_VRR_ALLOWED, 1"
- "__GL_MaxFramesAllowed, 1"
-
- # Electron
- # "ELECTRON_OZONE_PLATFORM_HINT, auto"
- "OZONE_PLATFORM, wayland"
-
- # Qt
- "QT_AUTO_SCREEN_SCALE_FACTOR, 1"
- "QT_QPA_PLATFORM, wayland;xcb"
- "QT_WAYLAND_DISABLE_WINDOWDECORATION, 1"
- "QT_QPA_PLATFORMTHEME, qt5ct"
- # "QT_STYLE_OVERRIDE, kvantum"
-
- # wlroots
- "WLR_NO_HARDWARE_CURSORS, 1"
- "WLR_DRM_NO_ATOMIC, 1"
- "WLR_USE_LIBINPUT, 1"
- "WLR_RENDERER_ALLOW_SOFTWARE, 1"
- # "WLR_DRM_DEVICES, /dev/dri/card0"
- # "WLR_EGL_NO_MODIFIERS, 1"
-
# XDG
- "XDG_SESSION_TYPE, wayland"
"XDG_CURRENT_DESKTOP, Hyprland"
"XDG_SESSION_DESKTOP, Hyprland"
-
- # Mozilla
- "MOZ_ENABLE_WAYLAND, 1"
- "MOZ_DISABLE_RDD_SANDBOX, 1"
-
- # Fcitx
- # https://fcitx-im.org/wiki/Using_Fcitx_5_on_Wayland
- "QT_IM_MODULE, fcitx"
- "XMODIFIERS, @im=fcitx"
- # "GTK_IM_MODULE, wayland"
- # "GTK_IM_MODULE, fcitx"
- "SDL_IM_MODULE, fcitx"
- "GLFW_IM_MODULE, ibus"
- "INPUT_METHOD, fcitx"
-
- # GTK
- "GTK_USE_PORTAL, 1"
-
- # Java
- "_JAVA_AWT_WM_NONREPARENTING, 1"
-
- # SSH
- # "SSH_AUTH_SOCK, $XDG_RUNTIME_DIR/ssh-agent.socket"
];
}
diff --git a/modules/default.nix b/modules/default.nix
index b4d4169..2e3bb89 100644
--- a/modules/default.nix
+++ b/modules/default.nix
@@ -2,8 +2,8 @@
imports = [
./boot
./environment
- ./hardware
./programs
+ ./hardware
./services
./datetime.nix
./networking.nix
diff --git a/modules/environment/default.nix b/modules/environment/default.nix
index 07805f0..fafb09d 100644
--- a/modules/environment/default.nix
+++ b/modules/environment/default.nix
@@ -1,6 +1,8 @@
{
imports = [
- ./system-packages.nix
+ ./system-packages
./variables.nix
];
+
+ environment.shellAliases.nvidia-settings = "nvidia-settings --config='$XDG_CONFIG_HOME'/nvidia/settings";
}
diff --git a/modules/environment/system-packages.nix b/modules/environment/system-packages/default.nix
index 85251d9..228280c 100644
--- a/modules/environment/system-packages.nix
+++ b/modules/environment/system-packages/default.nix
@@ -1,9 +1,16 @@
{ pkgs, ... }:
{
+ imports = [
+ ./gtk.nix
+ ./usb.nix
+ ./vulkan.nix
+ ];
+
environment.systemPackages = with pkgs; [
vim
wget
git
mediastreamer-openh264
+ pinentry
];
}
diff --git a/modules/environment/system-packages/gtk.nix b/modules/environment/system-packages/gtk.nix
new file mode 100644
index 0000000..4357e75
--- /dev/null
+++ b/modules/environment/system-packages/gtk.nix
@@ -0,0 +1,8 @@
+{ pkgs, ... }:
+{
+ environment.systemPackages = with pkgs; [
+ gtk2
+ gtk3
+ gtk4
+ ];
+}
diff --git a/modules/environment/system-packages/usb.nix b/modules/environment/system-packages/usb.nix
new file mode 100644
index 0000000..28bb194
--- /dev/null
+++ b/modules/environment/system-packages/usb.nix
@@ -0,0 +1,8 @@
+{ pkgs, ... }:
+{
+ environment.systemPackages = with pkgs; [
+ usbutils
+ lm_sensors
+ pciutils
+ ];
+}
diff --git a/modules/environment/system-packages/vulkan.nix b/modules/environment/system-packages/vulkan.nix
new file mode 100644
index 0000000..e8dda9b
--- /dev/null
+++ b/modules/environment/system-packages/vulkan.nix
@@ -0,0 +1,8 @@
+{ pkgs, ... }:
+{
+ environment.systemPackages = with pkgs; [
+ vulkan-loader
+ vulkan-validation-layers
+ vulkan-tools
+ ];
+}
diff --git a/modules/environment/variables.nix b/modules/environment/variables.nix
index d28c806..7e9b794 100644
--- a/modules/environment/variables.nix
+++ b/modules/environment/variables.nix
@@ -1,22 +1,74 @@
{
- environment = {
- variables = {
- LIBVA_DRIVER_NAME = "nvidia";
- XDG_SESSION_TYPE = "wayland";
- GBM_BACKEND = "nvidia-drm";
- __GLX_VENDOR_LIBRARY_NAME = "nvidia";
- __GL_GSYNC_ALLOWED = "1";
- __GL_VRR_ALLOWED = "0";
- QT_AUTO_SCREEN_SCALE_FACTOR = "1";
- QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
- CUDA_CACHE_PATH = "$XDG_CACHE_HOME/nv";
- };
-
- sessionVariables = {
- NIXOS_OZONE_WL = "1";
- WLR_NO_HARDWARE_CURSORS = "1";
- };
-
- shellAliases.nvidia-settings = "nvidia-settings --config='$XDG_CONFIG_HOME'/nvidia/settings";
+ environment.variables = {
+ # OpenGL
+ __GL_GSYNC_ALLOWED = "1";
+ __GL_VRR_ALLOWED = "0";
+ __GL_MaxFramesAllowed = "1";
+
+ # Java
+ _JAVA_AWT_WM_NONREPARENTING = "1";
+
+ # Qt
+ QT_AUTO_SCREEN_SCALE_FACTOR = "1";
+ QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
+ QT_QPA_PLATFORM = "wayland;xcb";
+ DISABLE_QT5_COMPAT = "0";
+ DISABLE_QT_COMPAT = "0";
+ QT_QPA_PLATFORMTHEME = "qt5ct";
+ # QT_STYLE_OVERRIDE = "kvantum";
+
+ # Electron
+ # ELECTRON_OZONE_PLATFORM_HINT = "auto";
+ # OZONE_PLATFORM = "wayland";
+ NIXOS_OZONE_WL = "1";
+
+ # Proton
+ PROTON_ENABLE_NGX_UPDATER = "1";
+
+ # wlroots
+ WLR_NO_HARDWARE_CURSORS = "1";
+ WLR_DRM_NO_ATOMIC = "1";
+ WLR_USE_LIBINPUT = "1";
+ WLR_RENDERER_ALLOW_SOFTWARE = "1";
+ WLR_DRM_DEVICES = "/dev/dri/card0";
+ WLR_EGL_NO_MODIFIERS = "1";
+ WLR_BACKEND = "vulkan";
+ WLR_RENDERER = "vulkan";
+
+ # Mozilla
+ MOZ_ENABLE_WAYLAND = "1";
+ MOZ_DISABLE_RDD_SANDBOX = "1";
+
+ # Nvidia
+ LIBVA_DRIVER_NAME = "nvidia";
+ __GLX_VENDOR_LIBRARY_NAME = "nvidia";
+ GBM_BACKEND = "nvidia-drm";
+ __VK_LAYER_NV_optimus = "NVIDIA_only";
+ __NV_PRIME_RENDER_OFFLOAD = "1";
+ NVD_BACKEND = "direct";
+
+ # Fcitx
+ # https://fcitx-im.org/wiki/Using_Fcitx_5_on_Wayland
+ QT_IM_MODULE = "fcitx";
+ XMODIFIERS = "@im=fcitx";
+ # GTK_IM_MODULE = "wayland";
+ # GTK_IM_MODULE = "fcitx";
+ SDL_IM_MODULE = "fcitx";
+ GLFW_IM_MODULE = "ibus";
+ INPUT_METHOD = "fcitx";
+ CUDA_CACHE_PATH = "$XDG_CACHE_HOME/nv";
+
+ # Other Wayland
+ GDK_BACKEND = "wayland,x11,*";
+ SDL_VIDEODRIVER = "wayland";
+ CLUTTER_BACKEND = "wayland";
+ XWAYLAND_NO_GLAMOR = "1"; # Gamescope
+ ANKI_WAYLAND = "1";
+ XDG_SESSION_TYPE = "wayland";
+
+ # Other
+ GTK_USE_PORTAL = "1";
+ DIRENV_LOG_FORMAT = "";
+ SSH_AUTH_SOCK = "/run/user/1000/keyring/ssh";
};
}
diff --git a/modules/hardware/graphics.nix b/modules/hardware/graphics.nix
index ae9d2fc..b757b58 100644
--- a/modules/hardware/graphics.nix
+++ b/modules/hardware/graphics.nix
@@ -3,6 +3,11 @@
hardware.graphics = {
enable = true;
enable32Bit = true;
- extraPackages = with pkgs; [ nvidia-vaapi-driver ];
+
+ extraPackages = with pkgs; [
+ nvidia-vaapi-driver
+ vaapiVdpau
+ libvdpau-va-gl
+ ];
};
}
diff --git a/modules/nix.nix b/modules/nix.nix
index 65413f0..8efc3ef 100644
--- a/modules/nix.nix
+++ b/modules/nix.nix
@@ -10,7 +10,6 @@
# sandbox = "relaxed";
trusted-users = [
- "root"
"@wheel"
];
@@ -20,9 +19,14 @@
];
substituters = [
+ "https://cache.nixos.org/"
"https://nix-community.cachix.org"
"https://hyprland.cachix.org"
- "https://ghostty.cachix.org"
+ ];
+
+ trusted-public-keys = [
+ "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
+ "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
];
experimental-features = [
diff --git a/modules/programs/default.nix b/modules/programs/default.nix
index 0cec34e..df9231e 100644
--- a/modules/programs/default.nix
+++ b/modules/programs/default.nix
@@ -1,24 +1,14 @@
{ pkgs, ... }:
{
- # imports = [ ./hyprland.nix ];
+ imports = [
+ ./gnupg.nix
+ ./nh.nix
+ ];
programs = {
fish.enable = true;
mtr.enable = true;
dconf.enable = true;
-
- gnupg.agent = {
- enable = true;
- enableSSHSupport = true;
- };
-
- nh = {
- enable = true;
-
- clean = {
- enable = true;
- extraArgs = "--keep-since 4d --keep 3";
- };
- };
+ ssh.startAgent = false;
};
}
diff --git a/modules/programs/gnupg.nix b/modules/programs/gnupg.nix
new file mode 100644
index 0000000..604781d
--- /dev/null
+++ b/modules/programs/gnupg.nix
@@ -0,0 +1,16 @@
+{ pkgs, ... }:
+{
+ programs.gnupg.agent = {
+ enable = true;
+ enableSSHSupport = true;
+ pinentryPackage = pkgs.pinentry-curses;
+
+ settings = {
+ enable-ssh-support = "";
+ ttyname = "$GPG_TTY";
+ default-cache-ttl = 60;
+ max-cache-ttl = 120;
+ allow-loopback-pinentry = "";
+ };
+ };
+}
diff --git a/modules/programs/hyprland.nix b/modules/programs/hyprland.nix
deleted file mode 100644
index befea76..0000000
--- a/modules/programs/hyprland.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ pkgs, inputs, ... }:
-{
- programs.hyprland = {
- enable = true;
- package = inputs.hyprland.packages.${pkgs.system}.hyprland;
- portalPackage = inputs.hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland;
- };
-}
diff --git a/modules/programs/nh.nix b/modules/programs/nh.nix
new file mode 100644
index 0000000..ebb4137
--- /dev/null
+++ b/modules/programs/nh.nix
@@ -0,0 +1,10 @@
+{ pkgs, ... }: {
+ programs.nh = {
+ enable = true;
+
+ clean = {
+ enable = true;
+ extraArgs = "--keep-since 4d --keep 3";
+ };
+ };
+}