diff --git a/flake.lock b/flake.lock index a059cb4f..4694edbf 100644 --- a/flake.lock +++ b/flake.lock @@ -203,6 +203,38 @@ "type": "github" } }, + "flake-compat_2": { + "flake": false, + "locked": { + "lastModified": 1733328505, + "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-compat_3": { + "flake": false, + "locked": { + "lastModified": 1650374568, + "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "b4a34015c698c7793d592d66adbab377907a2be8", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, "flake-parts": { "inputs": { "nixpkgs-lib": [ @@ -245,6 +277,43 @@ "type": "github" } }, + "flake-utils": { + "inputs": { + "systems": "systems" + }, + "locked": { + "lastModified": 1694529238, + "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils-plus": { + "inputs": { + "flake-utils": "flake-utils" + }, + "locked": { + "lastModified": 1715533576, + "narHash": "sha256-fT4ppWeCJ0uR300EH3i7kmgRZnAVxrH+XtK09jQWihk=", + "owner": "gytis-ivaskevicius", + "repo": "flake-utils-plus", + "rev": "3542fe9126dc492e53ddd252bb0260fe035f2c0f", + "type": "github" + }, + "original": { + "owner": "gytis-ivaskevicius", + "repo": "flake-utils-plus", + "rev": "3542fe9126dc492e53ddd252bb0260fe035f2c0f", + "type": "github" + } + }, "flakelib": { "inputs": { "fl-config": "fl-config", @@ -509,6 +578,22 @@ "type": "indirect" } }, + "nixpkgs-current": { + "locked": { + "lastModified": 1739736696, + "narHash": "sha256-zON2GNBkzsIyALlOCFiEBcIjI4w38GYOb+P+R4S8Jsw=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "d74a2335ac9c133d6bbec9fc98d91a77f1604c1f", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs-stable": { "locked": { "lastModified": 1710695816, @@ -646,13 +731,15 @@ "nix-index-database": "nix-index-database", "nixos-hardware": "nixos-hardware", "nixpkgs": "nixpkgs_2", + "nixpkgs-current": "nixpkgs-current", "nur": "nur", "plasma-manager": "plasma-manager", "scalpel": "scalpel", + "solaar": "solaar", "sops-nix": "sops-nix", "spacebar": "spacebar", "std": "std", - "systems": "systems", + "systems": "systems_2", "tree": "tree", "utils": "utils", "wezterm": "wezterm", @@ -731,6 +818,51 @@ "type": "github" } }, + "snowfall-lib": { + "inputs": { + "flake-compat": "flake-compat_3", + "flake-utils-plus": "flake-utils-plus", + "nixpkgs": [ + "solaar", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1718097323, + "narHash": "sha256-zCgs8Wp7rdt0tjNUHMUIvi6sIvDoprWIHwvTGq+LMK0=", + "owner": "snowfallorg", + "repo": "lib", + "rev": "aa19b02b63025263cec041fcb7a0857c3cb98859", + "type": "github" + }, + "original": { + "owner": "snowfallorg", + "ref": "v3.0.3", + "repo": "lib", + "type": "github" + } + }, + "solaar": { + "inputs": { + "flake-compat": "flake-compat_2", + "nixpkgs": [ + "nixpkgs" + ], + "snowfall-lib": "snowfall-lib" + }, + "locked": { + "lastModified": 1736321133, + "narHash": "sha256-WcMlGvUYUEUCxtrG3DHExdnvAHKuJazi9FLhAiqOorw=", + "rev": "808a089a32a2c0f436f106fc554215c4930b3c69", + "revCount": 67, + "type": "tarball", + "url": "https://api.flakehub.com/f/pinned/Svenum/Solaar-flake/0.1.2/019444d0-161f-78ca-a740-5eee5d09f672/source.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://flakehub.com/f/Svenum/Solaar-flake/%2A.tar.gz" + } + }, "sops-nix": { "inputs": { "nixpkgs": [ @@ -805,6 +937,21 @@ "type": "github" } }, + "systems_2": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "tree": { "inputs": { "nixpkgs": [ diff --git a/flake.nix b/flake.nix index 9b238337..51ba195e 100644 --- a/flake.nix +++ b/flake.nix @@ -2,7 +2,7 @@ description = "Kat's Infrastructure"; inputs = { systems.url = "github:nix-systems/default"; - + # to allow non-nix 2.4 evaluation flake-compat = { url = "github:edolstra/flake-compat"; @@ -18,6 +18,14 @@ nixpkgs = { url = "github:nixos/nixpkgs/nixos-unstable"; }; + nixpkgs-current = { + url = "github:nixos/nixpkgs/nixos-unstable"; + }; + solaar = { + # ewww flakehub ;; + url = "https://flakehub.com/f/Svenum/Solaar-flake/*.tar.gz"; + inputs.nixpkgs.follows = "nixpkgs"; + }; lanzaboote = { url = "github:nix-community/lanzaboote/v0.4.1"; diff --git a/home/environments/kde/kde.nix b/home/environments/kde/kde.nix index ab0a4eaf..21ccc2a9 100644 --- a/home/environments/kde/kde.nix +++ b/home/environments/kde/kde.nix @@ -21,12 +21,16 @@ plasma-workspace drkonqi # crash handler kde-inotify-survey # warns the user on low inotifywatch limits + pkgs.plasma-applet-commandoutput # Application integration libplasma # provides Kirigami platform theme plasma-integration # provides Qt platform theme kde-gtk-config # syncs KDE settings to GTK + qt6ct + pkgs.libsForQt5.qt5ct + # Artwork + themes breeze breeze-icons @@ -73,7 +77,6 @@ windowTitle = katFont; }; configFile = { - "kded5rc"."PlasmaBrowserIntegration"."shownCount" = 1; "kdeglobals"."General"."BrowserApplication" = "firefox.desktop"; "kdeglobals"."General"."TerminalApplication" = "konsole"; "kxkbrc"."Layout"."ResetOldOptions" = true; diff --git a/home/environments/kde/konawall.nix b/home/environments/kde/konawall.nix index 5aa7e149..e2702c62 100644 --- a/home/environments/kde/konawall.nix +++ b/home/environments/kde/konawall.nix @@ -20,7 +20,7 @@ rotate = true; source = "konachan"; tags = [ - "rating:s" + #"rating:s" "touhou" "score:>=50" "width:>=1500" diff --git a/home/environments/kde/qt.nix b/home/environments/kde/qt.nix index d5c3d75e..1bbc6b06 100644 --- a/home/environments/kde/qt.nix +++ b/home/environments/kde/qt.nix @@ -1,6 +1,16 @@ {pkgs, ...}: { + xdg.configFile."menus/applications.menu".source = "${pkgs.kdePackages.plasma-workspace}/etc/xdg/menus/plasma-applications.menu"; qt = { enable = false; - platformTheme = "kde"; + platformTheme.package = with pkgs.kdePackages; [ + plasma-integration + # I don't remember why I put this is here, maybe it fixes the theme of the system setttings + systemsettings + ]; + style = { + package = pkgs.kdePackages.breeze; + name = "Breeze"; + }; }; + systemd.user.sessionVariables = {QT_QPA_PLATFORMTHEME = "qt6ct";}; } diff --git a/home/profiles/graphical/media.nix b/home/profiles/graphical/media.nix index 7930bded..ea803107 100644 --- a/home/profiles/graphical/media.nix +++ b/home/profiles/graphical/media.nix @@ -1,9 +1,11 @@ { pkgs, lib, + inputs, ... }: let inherit (lib.attrsets) mapAttrsToList; + ytdlp = inputs.nixpkgs-current.legacyPackages.x86_64-linux.yt-dlp; in { # TODO: remove the libs programs.mpv = { @@ -21,7 +23,7 @@ in { script-opts = builtins.concatStringsSep "," (mapAttrsToList (k: v: "${k}=${builtins.toString v}") { - ytdl_hook-ytdl_path = "${pkgs.yt-dlp}/bin/yt-dlp"; + ytdl_hook-ytdl_path = "${ytdlp}/bin/yt-dlp"; osc-layout = "slimbox"; osc-vidscale = "no"; osc-deadzonesize = 0.75; @@ -40,7 +42,7 @@ in { yt = "mpv --ytdl-format='bestvideo[height<=?720][fps<=?30][vcodec!=?vp9]+bestaudio/best[height<=720]'"; # Laptop doesn't like above 720p :c }; home.packages = with pkgs; [ - yt-dlp # Watch videos from multiple sources without having to use a browser for it + ytdlp # Watch videos from multiple sources without having to use a browser for it ytcc # Subscriptions manager and RSS feed exporter for YouTube ]; } diff --git a/nixos/environments/kde/xserver.nix b/nixos/environments/kde/xserver.nix index 819b42aa..01ea0156 100644 --- a/nixos/environments/kde/xserver.nix +++ b/nixos/environments/kde/xserver.nix @@ -10,6 +10,7 @@ services = { displayManager.sddm = { enable = true; + wayland.enable = true; theme = "CommonalitySol"; }; xserver = { diff --git a/nixos/profiles/graphical/logitech.nix b/nixos/profiles/graphical/logitech.nix new file mode 100644 index 00000000..e79674d4 --- /dev/null +++ b/nixos/profiles/graphical/logitech.nix @@ -0,0 +1,8 @@ +{pkgs, ...}: { + services.solaar = { + enable = true; + window = "hide"; + package = pkgs.solaar; + batteryIcons = "regular"; + }; +} diff --git a/nixos/profiles/graphical/qt.nix b/nixos/profiles/graphical/qt.nix index 2c47bf2a..29a81a75 100644 --- a/nixos/profiles/graphical/qt.nix +++ b/nixos/profiles/graphical/qt.nix @@ -1,7 +1,7 @@ _: { qt = { enable = true; - platformTheme = "qt5ct"; - style = "kvantum"; + #platformTheme = "qt5ct"; + #style = "kvantum"; }; } diff --git a/packages/commonalitysol.nix b/packages/commonalitysol.nix index 87e03f44..f6afedd7 100644 --- a/packages/commonalitysol.nix +++ b/packages/commonalitysol.nix @@ -3,6 +3,7 @@ stdenvNoCC, fetchgit, openssh, + findutils, ... }: stdenvNoCC.mkDerivation rec { @@ -20,6 +21,7 @@ stdenvNoCC.mkDerivation rec { }; dontBuild = true; + dontCheckForBrokenSymlinks = true; installPhase = '' runHook preInstall diff --git a/systems/goliath.nix b/systems/goliath.nix index 9120a1b9..9214f236 100644 --- a/systems/goliath.nix +++ b/systems/goliath.nix @@ -41,6 +41,7 @@ _: let kde ]); + zramSwap.enable = true; home-manager.users.kat.imports = (with tree.home.profiles; [ graphical diff --git a/tree.nix b/tree.nix index 1fea0f98..a357f8f7 100644 --- a/tree.nix +++ b/tree.nix @@ -79,6 +79,7 @@ sops-nix.nixosModules.sops base16.nixosModules.base16 lanzaboote.nixosModules.lanzaboote + solaar.nixosModules.default ]; }; };