From e32d7813b9e7751c9eca77f268eab2eb544ccf30 Mon Sep 17 00:00:00 2001 From: Yusuf Bera Ertan Date: Sun, 10 Sep 2023 21:40:39 +0300 Subject: [PATCH] a --- flake.lock | 115 ++++++++++++------ flake.nix | 8 +- hosts/tkaronto/default.nix | 11 +- hosts/tkaronto/modules/autocpufreq.nix | 14 +++ hosts/tkaronto/modules/boot.nix | 4 +- .../{libvirtd.nix => libvirtd.nix.disabled} | 0 hosts/tkaronto/modules/tlp.nix | 6 +- hosts/wolumonde/modules/couchdb.nix | 18 +++ hosts/wolumonde/modules/nginx.nix | 1 + modules/de/greetd/default.nix | 19 ++- pkgs-set/overlays/abaddon.nix | 16 +++ pkgs-set/overlays/spotify.nix | 14 --- pkgs-set/pkgs-to-export.nix | 1 + users/modules/chromium/default.nix | 20 ++- users/modules/discord/default.nix | 61 +++++----- users/modules/musikcubed/default.nix | 6 +- users/modules/sway/default.nix | 5 +- users/patriot/default.nix | 20 +-- 18 files changed, 223 insertions(+), 116 deletions(-) rename hosts/tkaronto/modules/{libvirtd.nix => libvirtd.nix.disabled} (100%) create mode 100644 hosts/wolumonde/modules/couchdb.nix create mode 100644 pkgs-set/overlays/abaddon.nix delete mode 100644 pkgs-set/overlays/spotify.nix diff --git a/flake.lock b/flake.lock index 368cf2d..97d08d3 100644 --- a/flake.lock +++ b/flake.lock @@ -604,6 +604,24 @@ "inputs": { "nixpkgs-lib": "nixpkgs-lib_3" }, + "locked": { + "lastModified": 1688466019, + "narHash": "sha256-VeM2akYrBYMsb4W/MmBo1zmaMfgbL4cH3Pu8PGyIwJ0=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "8e8d955c22df93dbe24f19ea04f47a74adbdc5ec", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_2": { + "inputs": { + "nixpkgs-lib": "nixpkgs-lib_4" + }, "locked": { "lastModified": 1685662779, "narHash": "sha256-cKDDciXGpMEjP1n6HlzKinN0H+oLmNpgeCTzYnsA2po=", @@ -691,21 +709,6 @@ } }, "flake-utils_5": { - "locked": { - "lastModified": 1656928814, - "narHash": "sha256-RIFfgBuKz6Hp89yRr7+NR5tzIAbn52h8vT6vXkYjZoM=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "7e2a3b3dfd9af950a856d66b0a7d01e3c18aa249", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_6": { "inputs": { "systems": "systems_6" }, @@ -971,9 +974,46 @@ "type": "github" } }, - "nixd": { + "nh": { "inputs": { "flake-parts": "flake-parts", + "nix-filter": "nix-filter", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1691768450, + "narHash": "sha256-NbHI+0WrHxGj34AAzS6V3bj5EJK/YBKlmvbrkwkCxhs=", + "owner": "viperML", + "repo": "nh", + "rev": "6dcca8fc2a8873161ad60300d8ecad13326176d8", + "type": "github" + }, + "original": { + "owner": "viperML", + "repo": "nh", + "type": "github" + } + }, + "nix-filter": { + "locked": { + "lastModified": 1687178632, + "narHash": "sha256-HS7YR5erss0JCaUijPeyg2XrisEb959FIct3n2TMGbE=", + "owner": "numtide", + "repo": "nix-filter", + "rev": "d90c75e8319d0dd9be67d933d8eb9d0894ec9174", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "nix-filter", + "type": "github" + } + }, + "nixd": { + "inputs": { + "flake-parts": "flake-parts_2", "nixpkgs": [ "nixpkgs" ] @@ -1095,6 +1135,24 @@ } }, "nixpkgs-lib_3": { + "locked": { + "dir": "lib", + "lastModified": 1688049487, + "narHash": "sha256-100g4iaKC9MalDjUW9iN6Jl/OocTDtXdeAj7pEGIRh4=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "4bc72cae107788bf3f24f30db2e2f685c9298dc9", + "type": "github" + }, + "original": { + "dir": "lib", + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-lib_4": { "locked": { "dir": "lib", "lastModified": 1685564631, @@ -1354,6 +1412,7 @@ "limbusart": "limbusart", "musikquad": "musikquad", "musikspider": "musikspider", + "nh": "nh", "nixd": "nixd", "nixinate": "nixinate", "nixos-hardware": "nixos-hardware", @@ -1362,7 +1421,6 @@ "nixpkgs-master": "nixpkgs-master", "nixpkgs-wayland": "nixpkgs-wayland", "nur": "nur", - "steam-tui": "steam-tui", "stylix": "stylix", "vscode-extensions": "vscode-extensions" } @@ -1495,27 +1553,6 @@ "type": "github" } }, - "steam-tui": { - "inputs": { - "flake-utils": "flake-utils_5", - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1690992836, - "narHash": "sha256-KLf8gMbgt4UstiNGbMW7BnyQJPqP2uL2+0gIdwRYV3w=", - "owner": "dmadisetti", - "repo": "steam-tui", - "rev": "48bcd094b5b77336e20cc357d9172825475537e4", - "type": "github" - }, - "original": { - "owner": "dmadisetti", - "repo": "steam-tui", - "type": "github" - } - }, "stylix": { "inputs": { "base16": "base16", @@ -1679,7 +1716,7 @@ "vscode-extensions": { "inputs": { "flake-compat": "flake-compat_7", - "flake-utils": "flake-utils_6", + "flake-utils": "flake-utils_5", "nixpkgs": [ "nixpkgs" ] diff --git a/flake.nix b/flake.nix index bea9e67..6bda405 100644 --- a/flake.nix +++ b/flake.nix @@ -53,8 +53,8 @@ limbusart.url = "git+https://git.gaze.systems/dusk/limbusart.git"; limbusart.inputs.nixpkgs.follows = "nixpkgs"; - steam-tui.url = "github:dmadisetti/steam-tui"; - steam-tui.inputs.nixpkgs.follows = "nixpkgs"; + nh.url = "github:viperML/nh"; + nh.inputs.nixpkgs.follows = "nixpkgs"; # needed for hyprland setup # hyprland.url = "github:hyprwm/Hyprland"; @@ -99,9 +99,7 @@ generate-firefox-addons = toString "${pkgs.generate-firefox-addons}/bin/generate-firefox-addons"; - # buildHost = { - # type = "app"; - # }; + nh = toString "${inputs.nh.packages.${pkgs.system}.default}/bin/nh"; } ) allPkgs diff --git a/hosts/tkaronto/default.nix b/hosts/tkaronto/default.nix index 0187db3..ee78ebc 100644 --- a/hosts/tkaronto/default.nix +++ b/hosts/tkaronto/default.nix @@ -17,6 +17,7 @@ common-gpu-nvidia common-gpu-amd common-cpu-amd + common-cpu-amd-pstate ../../users/root ../../users/patriot ] @@ -93,12 +94,13 @@ programs.light.enable = true; fonts = { - enableDefaultFonts = true; + enableDefaultPackages = true; fontconfig.enable = true; - fonts = [pkgs.dejavu_fonts]; + packages = [pkgs.dejavu_fonts]; }; environment = { + sessionVariables.FLAKE = "/etc/nixos"; systemPackages = [pkgs.ntfs3g]; pathsToLink = ["/share/zsh"]; persistence."${config.system.persistDir}" = { @@ -114,8 +116,9 @@ }; }; - networking.firewall.allowedUDPPorts = [49152]; - networking.firewall.allowedTCPPorts = [7905 7906]; + networking.firewall.allowedUDPPorts = [4990 4995]; + # musikcube + networking.firewall.allowedTCPPorts = [7905 7906] ++ [6695 6696 6697 6698 6699]; # for tailscale networking.firewall.checkReversePath = "loose"; diff --git a/hosts/tkaronto/modules/autocpufreq.nix b/hosts/tkaronto/modules/autocpufreq.nix index f70dbef..13b40ac 100644 --- a/hosts/tkaronto/modules/autocpufreq.nix +++ b/hosts/tkaronto/modules/autocpufreq.nix @@ -1,5 +1,19 @@ { services.auto-cpufreq.enable = true; + services.auto-cpufreq.settings = { + charger = { + governor = "powersave"; + scaling_min_freq = 1500000; + scaling_max_freq = 3000000; + turbo = "auto"; + }; + battery = { + governor = "powersave"; + scaling_min_freq = 900000; + scaling_max_freq = 1800000; + turbo = "auto"; + }; + }; services.tlp.settings = { CPU_ENERGY_PERF_POLICY_ON_AC = ""; CPU_ENERGY_PERF_POLICY_ON_BAT = ""; diff --git a/hosts/tkaronto/modules/boot.nix b/hosts/tkaronto/modules/boot.nix index 7f28412..6674221 100644 --- a/hosts/tkaronto/modules/boot.nix +++ b/hosts/tkaronto/modules/boot.nix @@ -1,12 +1,12 @@ {pkgs, ...}: { boot = { - tmpOnTmpfs = true; + tmp.useTmpfs = true; loader = { efi.canTouchEfiVariables = true; systemd-boot.enable = true; systemd-boot.configurationLimit = 10; }; - kernelPackages = pkgs.linuxPackages_latest; + kernelPackages = pkgs.linuxPackages_zen; supportedFilesystems = ["f2fs"]; initrd = { availableKernelModules = [ diff --git a/hosts/tkaronto/modules/libvirtd.nix b/hosts/tkaronto/modules/libvirtd.nix.disabled similarity index 100% rename from hosts/tkaronto/modules/libvirtd.nix rename to hosts/tkaronto/modules/libvirtd.nix.disabled diff --git a/hosts/tkaronto/modules/tlp.nix b/hosts/tkaronto/modules/tlp.nix index 6f2e95c..8bb6fec 100644 --- a/hosts/tkaronto/modules/tlp.nix +++ b/hosts/tkaronto/modules/tlp.nix @@ -4,8 +4,12 @@ settings = { RADEON_DPM_PERF_LEVEL_ON_AC = "auto"; RADEON_DPM_PERF_LEVEL_ON_BAT = "low"; - RADEON_DPM_STATE_ON_AC = "performance"; + RADEON_DPM_STATE_ON_AC = "balanced"; RADEON_DPM_STATE_ON_BAT = "battery"; + PCIE_ASPM_ON_AC = "powersave"; + PCIE_ASPM_ON_BAT = "powersupersave"; + PLATFORM_PROFILE_ON_AC = "balanced"; + PLATFORM_PROFILE_ON_BAT = "low-power"; NMI_WATCHDOG = 0; }; }; diff --git a/hosts/wolumonde/modules/couchdb.nix b/hosts/wolumonde/modules/couchdb.nix new file mode 100644 index 0000000..c5387a6 --- /dev/null +++ b/hosts/wolumonde/modules/couchdb.nix @@ -0,0 +1,18 @@ +{config, ...}: { + services.couchdb = { + enable = true; + port = 5999; + configFile = "/var/lib/couchdb/config"; + }; + services.nginx.virtualHosts."couchdb.gaze.systems" = { + useACMEHost = "gaze.systems"; + forceSSL = true; + locations."/".proxyPass = "http://localhost:${toString config.services.couchdb.port}"; + # locations."/".extraConfig = '' + # add_header 'Access-Control-Allow-Credentials' 'true'; + # add_header 'Access-Control-Allow-Methods' 'GET, PUT, POST, HEAD, DELETE'; + # add_header 'Access-Control-Allow-Headers' 'Accept,Authorization,Content-Type,Origin,Referer'; + # add_header 'Access-Control-Max-Age' 3600; + # ''; + }; +} \ No newline at end of file diff --git a/hosts/wolumonde/modules/nginx.nix b/hosts/wolumonde/modules/nginx.nix index aec3e49..15bc6cb 100644 --- a/hosts/wolumonde/modules/nginx.nix +++ b/hosts/wolumonde/modules/nginx.nix @@ -19,6 +19,7 @@ "matrix.gaze.systems" "ms.gaze.systems" "mq.gaze.systems" + "couchdb.gaze.systems" ]; }; certs."limbus.company" = { diff --git a/modules/de/greetd/default.nix b/modules/de/greetd/default.nix index c92ffbe..215e54d 100644 --- a/modules/de/greetd/default.nix +++ b/modules/de/greetd/default.nix @@ -1,10 +1,25 @@ -{pkgs, ...}: { +{pkgs, ...}: let + run-sway = pkgs.writeText "run-sway.sh" '' + export _JAVA_AWT_WM_NONREPARENTING=1 + + export XDG_CURRENT_DESKTOP=sway + + export QT_QPA_PLATFORM=wayland + export QT_QPA_PLATFORMTHEME=qt5ct + export QT_WAYLAND_DISABLE_WINDOWDECORATION=1 + + export GDK_BACKEND=wayland + export WLR_DRM_DEVICES=/dev/dri/card0 + export WL_DRM_DEVICES=/dev/dri/card0 + sway --unsupported-gpu + ''; +in { services.greetd = { enable = true; settings = { terminal.vt = 1; default_session = { - command = "${pkgs.greetd.tuigreet}/bin/tuigreet --issue --time --cmd 'sway --unsupported-gpu'"; + command = "${pkgs.greetd.tuigreet}/bin/tuigreet --issue --time --cmd 'bash --login ${run-sway}'"; user = "greeter"; }; }; diff --git a/pkgs-set/overlays/abaddon.nix b/pkgs-set/overlays/abaddon.nix new file mode 100644 index 0000000..7b1347a --- /dev/null +++ b/pkgs-set/overlays/abaddon.nix @@ -0,0 +1,16 @@ +final: prev: { + abaddon = prev.abaddon.overrideAttrs (old: rec { + version = "0.1.12"; + src = final.fetchFromGitHub { + owner = "uowuo"; + repo = "abaddon"; + rev = "v${version}"; + sha256 = "sha256-Rz3c6RMZUiKQ0YKKQkCEkelfIGUq+xVmgNskj7uEjGI="; + fetchSubmodules = true; + }; + buildInputs = old.buildInputs ++ (with final; [ + miniaudio libsodium libopus spdlog pcre2 + rnnoise qrcodegen openssl + ]); + }); +} diff --git a/pkgs-set/overlays/spotify.nix b/pkgs-set/overlays/spotify.nix deleted file mode 100644 index 8332e43..0000000 --- a/pkgs-set/overlays/spotify.nix +++ /dev/null @@ -1,14 +0,0 @@ -final: prev: { - spotify = - final.runCommand prev.spotify.name { - inherit (prev.spotify) meta; - nativeBuildInputs = [final.makeWrapper]; - } '' - shopt -s extglob - mkdir -p $out/bin - ln -sf ${prev.spotify}/!(bin) $out/ - ln -sf ${prev.spotify}/bin/* $out/bin/ - wrapProgram $out/bin/spotify \ - --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--enable-features=UseOzonePlatform --ozone-platform=wayland}}" - ''; -} diff --git a/pkgs-set/pkgs-to-export.nix b/pkgs-set/pkgs-to-export.nix index 3ae7b09..88f298f 100644 --- a/pkgs-set/pkgs-to-export.nix +++ b/pkgs-set/pkgs-to-export.nix @@ -5,6 +5,7 @@ pkgs: ( "comic-mono" "chromium" "discordo" + "abaddon" ] pkgs ) diff --git a/users/modules/chromium/default.nix b/users/modules/chromium/default.nix index d0573c4..f439b1c 100644 --- a/users/modules/chromium/default.nix +++ b/users/modules/chromium/default.nix @@ -9,13 +9,21 @@ "--ozone-platform-hint=auto" "--flag-switches-begin" "--enable-webrtc-pipewire-capturer" - # "--force-dark-mode" - # "--enable-gpu-rasterization" - # "--enable-zero-copy" - # "--ignore-gpu-blocklist" - # "--disable-gpu-driver-bug-workarounds" + "--disable-software-rasterizer" + "--disable-gpu-driver-workarounds" + "--enable-accelerated-video-decode" + "--enable-accelerated-mjpeg-decode" + "--enable-gpu-compositing" + "--enable-oop-rasterization" + "--canvas-oop-rasterization" + "--enable-raw-draw" + "--enable-zero-copy" + "--enable-gpu-rasterization" + "--enable-zero-copy" + "--ignore-gpu-blocklist" + "--disable-gpu-driver-bug-workarounds" "--ozone-platform-hint=wayland" - "--enable-features=SystemNotifications,WaylandWindowDecorations,WebRTCPipeWireCapturer" + "--enable-features=SystemNotifications,WaylandWindowDecorations,WebRTCPipeWireCapturer,EnableDrDc,CanvasOopRasterization,RawDraw,VaapiVideoDecoder,UseSkiaRenderer" "--flag-switches-end" "--disk-cache-dir=\"$XDG_RUNTIME_DIR/chromium-cache\"" ]; diff --git a/users/modules/discord/default.nix b/users/modules/discord/default.nix index e1597dc..e71efcf 100644 --- a/users/modules/discord/default.nix +++ b/users/modules/discord/default.nix @@ -6,44 +6,45 @@ ... }: { home.persistence."${config.system.persistDir}${config.home.homeDirectory}".directories = [ - ".config/discordcanary" + ".config/ArmCord" ]; - xdg.configFile."discordcanary/settings.json".text = builtins.toJSON { - # openasar = { - # setup = true; - # noTyping = true; - # quickstart = true; - # # theme = builtins.readFile inputs.catppuccin-discord; - # }; - SKIP_HOST_UPDATE = true; - IS_MAXIMIZED = true; - IS_MINIMIZED = false; - trayBalloonShown = true; - }; home.packages = let flags = [ - "--flag-switches-begin" - "--enable-features=UseOzonePlatform,WebRTCPipeWireCapturer" - "--flag-switches-end" - "--ozone-platform=wayland" - "--enable-webrtc-pipewire-capturer" - "--disable-gpu-memory-buffer-video-frames" - "--enable-accelerated-mjpeg-decode" - "--enable-accelerated-video" - "--enable-gpu-rasterization" - "--enable-native-gpu-memory-buffers" - "--enable-zero-copy" - "--ignore-gpu-blocklist" + # "--flag-switches-begin" + # "--enable-features=UseOzonePlatform,WebRTCPipeWireCapturer" + # "--flag-switches-end" + # "--ozone-platform=wayland" + # "--enable-webrtc-pipewire-capturer" + # "--disable-gpu-memory-buffer-video-frames" + # "--enable-accelerated-mjpeg-decode" + # "--enable-accelerated-video" + # "--enable-gpu-rasterization" + # "--enable-native-gpu-memory-buffers" + # "--enable-zero-copy" + # "--ignore-gpu-blocklist" ]; pkg = - (pkgs.discord-canary.override { + (pkgs.armcord.override { nss = pkgs.nss_latest; - # withOpenASAR = true; }) .overrideAttrs (old: { - preInstall = '' - gappsWrapperArgs+=("--add-flags" "${lib.concatStringsSep " " flags}") - ''; + # preInstall = '' + # gappsWrapperArgs+=("--add-flags" "${lib.concatStringsSep " " flags}") + # ''; }); in [pkg]; + systemd.user.services.premid = { + Install = { + WantedBy = ["default.target"]; + }; + Unit = { + Description = "premid"; + After = "network.target"; + }; + Service = { + ExecStart = "${pkgs.premid}/bin/premid"; + Restart = "on-failure"; + RestartSec = 5; + }; + }; } diff --git a/users/modules/musikcubed/default.nix b/users/modules/musikcubed/default.nix index 237db79..2792551 100644 --- a/users/modules/musikcubed/default.nix +++ b/users/modules/musikcubed/default.nix @@ -21,9 +21,9 @@ in { }; config = lib.mkIf cfg.enable { systemd.user.services.musikcubed = { - Install = { - WantedBy = ["multi-user.target"]; - }; + # Install = { + # WantedBy = ["default.target"]; + # }; Unit = { Description = "musikcubed"; After = "network.target"; diff --git a/users/modules/sway/default.nix b/users/modules/sway/default.nix index 611a66f..9c7fb55 100644 --- a/users/modules/sway/default.nix +++ b/users/modules/sway/default.nix @@ -32,7 +32,10 @@ config = { bars = []; gaps.smartBorders = "on"; - menu = mkRofiCmd ["-show" "drun"]; + menu = mkRofiCmd [ + "-show" + "drun" + ]; modifier = "Mod4"; terminal = config.settings.terminal.binary; keybindings = let diff --git a/users/patriot/default.nix b/users/patriot/default.nix index 5e1f6e0..9e04255 100644 --- a/users/patriot/default.nix +++ b/users/patriot/default.nix @@ -66,7 +66,7 @@ in { dconf.enable = true; weylus.users = ["patriot"]; java = { - enable = true; + enable = false; package = pkgs.jre8; }; }; @@ -108,7 +108,7 @@ in { ["sway" "foot"] # desktop stuff ["wayland"] - ["chromium"] + ["obsidian" "chromium"] # cli stuff ["zoxide" "zsh" "fzf" "starship" "direnv"] # dev stuff @@ -143,9 +143,9 @@ in { "direnv" "zsh" "keyrings" - # "lutris" - "Terraria" - "PrismLauncher" + "lutris" + # "Terraria" + # "PrismLauncher" ] ++ mkPaths ".config" [ # "lutris" @@ -153,7 +153,7 @@ in { "musikcube" ]; files = l.flatten [ - ".config/gnome-initial-setup-done" + # ".config/gnome-initial-setup-done" (lib.removePrefix "~/" config.programs.ssh.userKnownHostsFile) ]; allowOther = true; @@ -190,16 +190,18 @@ in { ffmpeg mupdf xdg-utils - # lutris + lutris protontricks # fractal-next # obs-studio libreoffice-fresh helvum nix-output-monitor + inputs.nh.packages.${pkgs.system}.default # prismlauncher - steamPackages.steamcmd - steam-tui + # steamPackages.steamcmd + # steam-tui + abaddon ]; }; programs = {