From 208d1ed7b4ebda4502536fec5d0a9982a2d7ae05 Mon Sep 17 00:00:00 2001 From: "Lennart J. Kurzweg (Nx2)" Date: Wed, 27 Aug 2025 21:02:03 +0200 Subject: [PATCH 01/11] no true black --- flake-modules/rice.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flake-modules/rice.nix b/flake-modules/rice.nix index 0503d59..12cfc31 100644 --- a/flake-modules/rice.nix +++ b/flake-modules/rice.nix @@ -26,7 +26,7 @@ pkgs: rec { fbcolor = (builtins.fromJSON (builtins.readFile ./colors.json)).base; fcolor = facolor // fbcolor; xcolor = with ccolor; with fcolor; { - background = "#000000"; + # background = "#000000"; # foreground = "#dddddd"; # accent = blue; # secondary = cyan; From 482b96d0ae6aef17a33600a12ab65c7184b2aafb Mon Sep 17 00:00:00 2001 From: "Lennart J. Kurzweg (Nx2)" Date: Wed, 27 Aug 2025 21:02:20 +0200 Subject: [PATCH 02/11] glsl --- home-modules/programming/glsl.nix | 8 ++++++++ home.nix | 1 + 2 files changed, 9 insertions(+) create mode 100644 home-modules/programming/glsl.nix diff --git a/home-modules/programming/glsl.nix b/home-modules/programming/glsl.nix new file mode 100644 index 0000000..7f77d81 --- /dev/null +++ b/home-modules/programming/glsl.nix @@ -0,0 +1,8 @@ +{ pkgs, ... }@all: with all; +{ + home = { + packages = with pkgs; [ + glsl_analyzer + ]; + }; +} diff --git a/home.nix b/home.nix index f602ee6..724b593 100644 --- a/home.nix +++ b/home.nix @@ -42,6 +42,7 @@ ./home-modules/pnx.nix ./home-modules/programming/c.nix ./home-modules/programming/gleam.nix + ./home-modules/programming/glsl.nix ./home-modules/programming/go.nix ./home-modules/programming/java.nix ./home-modules/programming/js.nix From 432c1e18f86752dca3d2f2c10cde1923a4094195 Mon Sep 17 00:00:00 2001 From: "Lennart J. Kurzweg (Nx2)" Date: Wed, 27 Aug 2025 21:03:11 +0200 Subject: [PATCH 03/11] colorful firefox --- home-modules/firefox.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/home-modules/firefox.nix b/home-modules/firefox.nix index 4b89bd2..ca0dd51 100644 --- a/home-modules/firefox.nix +++ b/home-modules/firefox.nix @@ -67,13 +67,13 @@ /* New tab page */ --newtab-background-color : ${background} !important; - --newtab-background-color-secondary : ${background} !important; + --newtab-background-color-secondary : ${secondary.dark} !important; --newtab-text-primary-color : ${foreground} !important; --newtab-text-secondary-color : ${secondary.base} !important; --newtab-search-icon-color : ${accent.base} !important; --tabpanel-background-color : transparent !important; - background : rgba(${rice.lib.hex-to-rgb-comma-string background}, ${builtins.toString rice.transparency}) !important; + background : linear-gradient(180deg,rgba(${rice.lib.hex-to-rgb-comma-string secondary.dark}, ${builtins.toString rice.transparency}) 0%, rgba(${rice.lib.hex-to-rgb-comma-string background}, ${builtins.toString rice.transparency}) 100%) !important; } .tabbrowser-tab[selected="true"] { color: ${background} !important; From 2c6e0f0b7367139946cb20059b984aea975e6041 Mon Sep 17 00:00:00 2001 From: "Lennart J. Kurzweg (Nx2)" Date: Wed, 27 Aug 2025 21:03:28 +0200 Subject: [PATCH 04/11] colorful zathura --- home-modules/zathura.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/home-modules/zathura.nix b/home-modules/zathura.nix index 447f635..9cc780d 100644 --- a/home-modules/zathura.nix +++ b/home-modules/zathura.nix @@ -10,7 +10,7 @@ completion-fg = foreground; completion-highlight-bg = background; completion-highlight-fg = accent.base; - default-bg = "rgba(${f background},${t})"; + default-bg = "rgba(${f accent.dark},${t})"; default-fg = foreground; highlight-active-color = "rgba(${f accent.base},0.5)"; highlight-color = "rgba(${f secondary.base},0.5)"; From e81d82ad6ea877da9d5362901a9bb77d16ed8127 Mon Sep 17 00:00:00 2001 From: "Lennart J. Kurzweg (Nx2)" Date: Wed, 27 Aug 2025 21:03:57 +0200 Subject: [PATCH 05/11] yazi colorful tabs --- home-modules/yazi.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/home-modules/yazi.nix b/home-modules/yazi.nix index 74af1fa..66cf0d1 100644 --- a/home-modules/yazi.nix +++ b/home-modules/yazi.nix @@ -328,6 +328,12 @@ border_symbol = "│"; border_style = { fg = border; }; }; + tabs = { + active = { fg = accent.dark; bg = accent.base; }; + inactive = { fg = secondary.base; bg = secondary.dark; }; + # sep_inner = + # sep_outer = + }; status = { separator_open = " "; #""; separator_close = " "; #""; From fb17f376620e19a16322991064c9c88291e40907 Mon Sep 17 00:00:00 2001 From: "Lennart J. Kurzweg (Nx2)" Date: Wed, 27 Aug 2025 21:04:24 +0200 Subject: [PATCH 06/11] opencode model --- home-modules/opencode.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/home-modules/opencode.nix b/home-modules/opencode.nix index 3a57c32..7865a61 100644 --- a/home-modules/opencode.nix +++ b/home-modules/opencode.nix @@ -11,8 +11,7 @@ theme = "matrix"; provider = { ollama = { - apiKey = "KEY"; - disabled = false; + name = "Ollama (local)"; npm = "@ai-sdk/openai-compatible"; options = { baseURL = "http://localhost:11434/v1"; From 35c5760f50dc8e3b5464f3ff7d3cc96b7d88e2d1 Mon Sep 17 00:00:00 2001 From: "Lennart J. Kurzweg (Nx2)" Date: Wed, 27 Aug 2025 21:04:41 +0200 Subject: [PATCH 07/11] NxNORTH Monitor adjustment --- home-modules/hyprland.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/home-modules/hyprland.nix b/home-modules/hyprland.nix index 2d3e3a8..90863d8 100644 --- a/home-modules/hyprland.nix +++ b/home-modules/hyprland.nix @@ -10,7 +10,7 @@ let second = { name = "desc:Sony SONY TV 0x01010101"; resolution = "1920x1080"; position = "0x0"; scale = "1.0"; }; }; north = { - main = { name = "desc:Iiyama North America PL3270Q na"; resolution = "2560x1440"; position = "1920x150"; scale = "1.0"; }; + main = { name = "desc:Iiyama North America PL3270Q na"; resolution = "2560x1440"; position = "1920x0"; scale = "1.0"; }; left = { name = "desc:Philips Consumer Electronics Company 273PLPH AU11423002132"; resolution = "1920x1080"; position = "0x0"; scale = "1.0"; }; # right = { name = "HDMI-A-2"; resolution = "1920x1080"; position = "4480x360"; scale = "1.0"; }; }; From efe96374de13a3e99c8d8ee0359d2498501eef8a Mon Sep 17 00:00:00 2001 From: "Lennart J. Kurzweg (Nx2)" Date: Wed, 27 Aug 2025 21:05:26 +0200 Subject: [PATCH 08/11] ollama accessable from everywhere --- system-modules/ollama.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/system-modules/ollama.nix b/system-modules/ollama.nix index 9fe38d3..446446a 100644 --- a/system-modules/ollama.nix +++ b/system-modules/ollama.nix @@ -4,7 +4,7 @@ package = if hyper.nvidia.enable then pkgs.ollama-cuda else pkgs.ollama; enable = true; acceleration = lib.mkIf hyper.nvidia.enable "cuda"; - host = if hyper.host == "NxACE" then "0.0.0.0" else "127.0.0.1"; + host = "0.0.0.0"; port = 11434; environmentVariables = { OLLAMA_ORIGINS = "*"; From 01deb843e4a6740219d27fabed0de3b8bf332aeb Mon Sep 17 00:00:00 2001 From: "Lennart J. Kurzweg (Nx2)" Date: Wed, 27 Aug 2025 22:21:58 +0200 Subject: [PATCH 09/11] term file choose works again --- flake.lock | 134 +++++++++++++++++++++--------------------- home-modules/yazi.nix | 76 +++++------------------- 2 files changed, 81 insertions(+), 129 deletions(-) diff --git a/flake.lock b/flake.lock index 2ab3b71..a14e36f 100644 --- a/flake.lock +++ b/flake.lock @@ -20,11 +20,11 @@ ] }, "locked": { - "lastModified": 1752743471, - "narHash": "sha256-4izhj1j7J4mE8LgljCXSIUDculqOsxxhdoC81VhqizM=", + "lastModified": 1755632680, + "narHash": "sha256-EjaD8+d7AiAV2fGRN4NTMboWDwk8szDfwbzZ8DL1PhQ=", "owner": "hyprwm", "repo": "aquamarine", - "rev": "e31b575d19e7cf8a8f4398e2f9cffe27a1332506", + "rev": "50637ed23e962f0db294d6b0ef534f37b144644b", "type": "github" }, "original": { @@ -51,11 +51,11 @@ "flake-compat": { "flake": false, "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "lastModified": 1747046372, + "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", "owner": "edolstra", "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", "type": "github" }, "original": { @@ -186,11 +186,11 @@ ] }, "locked": { - "lastModified": 1753592768, - "narHash": "sha256-oV695RvbAE4+R9pcsT9shmp6zE/+IZe6evHWX63f2Qg=", + "lastModified": 1756245065, + "narHash": "sha256-aAZNbGcWrVRZgWgkQbkabSGcDVRDMgON4BipMy69gvI=", "owner": "nix-community", "repo": "home-manager", - "rev": "fc3add429f21450359369af74c2375cb34a2d204", + "rev": "54b2879ce622d44415e727905925e21b8f833a98", "type": "github" }, "original": { @@ -216,11 +216,11 @@ ] }, "locked": { - "lastModified": 1749155331, - "narHash": "sha256-XR9fsI0zwLiFWfqi/pdS/VD+YNorKb3XIykgTg4l1nA=", + "lastModified": 1753964049, + "narHash": "sha256-lIqabfBY7z/OANxHoPeIrDJrFyYy9jAM4GQLzZ2feCM=", "owner": "hyprwm", "repo": "hyprcursor", - "rev": "45fcc10b4c282746d93ec406a740c43b48b4ef80", + "rev": "44e91d467bdad8dcf8bbd2ac7cf49972540980a5", "type": "github" }, "original": { @@ -245,11 +245,11 @@ ] }, "locked": { - "lastModified": 1752149140, - "narHash": "sha256-gbh1HL98Fdqu0jJIWN4OJQN7Kkth7+rbkFpSZLm/62A=", + "lastModified": 1754305013, + "narHash": "sha256-u+M2f0Xf1lVHzIPQ7DsNCDkM1NYxykOSsRr4t3TbSM4=", "owner": "hyprwm", "repo": "hyprgraphics", - "rev": "340494a38b5ec453dfc542c6226481f736cc8a9a", + "rev": "4c1d63a0f22135db123fc789f174b89544c6ec2d", "type": "github" }, "original": { @@ -274,11 +274,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1753634783, - "narHash": "sha256-Rl/voNjvcQH6E1vi4wNt5AY6CWaYkqfnkpm9GxrqKGg=", + "lastModified": 1756069181, + "narHash": "sha256-FPur4yuDwzM9uHhPFJW6KD3Xys5fz0xmRmZqFfWQD3Y=", "ref": "refs/heads/main", - "rev": "c63d0003a1e5155248695f19778f815a8ad34c67", - "revCount": 6317, + "rev": "0ed880f3f7dc2c746bf3590eee266c010d737558", + "revCount": 6393, "submodules": true, "type": "git", "url": "https://github.com/hyprwm/Hyprland" @@ -306,11 +306,11 @@ ] }, "locked": { - "lastModified": 1753028264, - "narHash": "sha256-GbfsRZWW5uBAOeddLkmrYV2XmAbI0etVUTBXFH5thcw=", + "lastModified": 1756311938, + "narHash": "sha256-XiNmc8kdOd4adzif9PABKOH3u4Nv+zadIRfH3XrJFy0=", "owner": "hyprwm", "repo": "hyprland-plugins", - "rev": "14f9a444793d6dd78c29033acf9c3c974ded708d", + "rev": "ee66b49fda3423df8bfd6206d9101a81de9c1832", "type": "github" }, "original": { @@ -399,11 +399,11 @@ ] }, "locked": { - "lastModified": 1750371812, - "narHash": "sha256-D868K1dVEACw17elVxRgXC6hOxY+54wIEjURztDWLk8=", + "lastModified": 1753819801, + "narHash": "sha256-tHe6XeNeVeKapkNM3tcjW4RuD+tB2iwwoogWJOtsqTI=", "owner": "hyprwm", "repo": "hyprland-qtutils", - "rev": "b13c7481e37856f322177010bdf75fccacd1adc8", + "rev": "b308a818b9dcaa7ab8ccab891c1b84ebde2152bc", "type": "github" }, "original": { @@ -428,11 +428,11 @@ ] }, "locked": { - "lastModified": 1750371198, - "narHash": "sha256-/iuJ1paQOBoSLqHflRNNGyroqfF/yvPNurxzcCT0cAE=", + "lastModified": 1753622892, + "narHash": "sha256-0K+A+gmOI8IklSg5It1nyRNv0kCNL51duwnhUO/B8JA=", "owner": "hyprwm", "repo": "hyprlang", - "rev": "cee01452bca58d6cadb3224e21e370de8bc20f0b", + "rev": "23f0debd2003f17bd65f851cd3f930cff8a8c809", "type": "github" }, "original": { @@ -449,11 +449,11 @@ "systems": "systems_2" }, "locked": { - "lastModified": 1753590784, - "narHash": "sha256-Q30DFlPwD1ZK52TD4wSnqDO5gk9Kvifr923siI8AdVQ=", + "lastModified": 1754887838, + "narHash": "sha256-npC+H+Wl60EdrV75sjqm+bbbLbKgCCGn4ALSM0B2OWA=", "owner": "KZDKM", "repo": "Hyprspace", - "rev": "a847f1d6a7326395d17fe9b6b4ab63a10eb152eb", + "rev": "2b61fd2115262243b03aa9afe8dfd8a78e71636c", "type": "github" }, "original": { @@ -474,11 +474,11 @@ ] }, "locked": { - "lastModified": 1752252310, - "narHash": "sha256-06i1pIh6wb+sDeDmWlzuPwIdaFMxLlj1J9I5B9XqSeo=", + "lastModified": 1755416120, + "narHash": "sha256-PosTxeL39YrLvCX5MqqPA6NNWQ4T5ea5K55nmN7ju9Q=", "owner": "hyprwm", "repo": "hyprutils", - "rev": "bcabcbada90ed2aacb435dc09b91001819a6dc82", + "rev": "e631ea36ddba721eceda69bfee6dd01068416489", "type": "github" }, "original": { @@ -499,11 +499,11 @@ ] }, "locked": { - "lastModified": 1751897909, - "narHash": "sha256-FnhBENxihITZldThvbO7883PdXC/2dzW4eiNvtoV5Ao=", + "lastModified": 1755184602, + "narHash": "sha256-RCBQN8xuADB0LEgaKbfRqwm6CdyopE1xIEhNc67FAbw=", "owner": "hyprwm", "repo": "hyprwayland-scanner", - "rev": "fcca0c61f988a9d092cbb33e906775014c61579d", + "rev": "b3b0f1f40ae09d4447c20608e5a4faf8bf3c492d", "type": "github" }, "original": { @@ -542,11 +542,11 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1753642709, - "narHash": "sha256-J/xPmOfKRX/4UtBIVa5qkKuwN6FrHQBmo5bIPmcPeck=", + "lastModified": 1755261305, + "narHash": "sha256-EOqCupB5X5WoGVHVcfOZcqy0SbKWNuY3kq+lj1wHdu8=", "owner": "nix-community", "repo": "NixOS-WSL", - "rev": "e1e0999d45ba66d2d66ac061c27ce680814d14b1", + "rev": "203a7b463f307c60026136dd1191d9001c43457f", "type": "github" }, "original": { @@ -558,11 +558,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1752687322, - "narHash": "sha256-RKwfXA4OZROjBTQAl9WOZQFm7L8Bo93FQwSJpAiSRvo=", + "lastModified": 1755186698, + "narHash": "sha256-wNO3+Ks2jZJ4nTHMuks+cxAiVBGNuEBXsT29Bz6HASo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6e987485eb2c77e5dcc5af4e3c70843711ef9251", + "rev": "fbcf476f790d8a217c3eab4e12033dc4a0f6d23c", "type": "github" }, "original": { @@ -574,11 +574,11 @@ }, "nixpkgs-latest": { "locked": { - "lastModified": 1753644334, - "narHash": "sha256-b7OuvvF9XEe5ms/7Uaq3g4fkmbLhQeP2b+weAjnciXE=", + "lastModified": 1756321630, + "narHash": "sha256-Lrqzu9plqzo3Zp64X11qL1wWHrMYMGML9XKzuiv6QJE=", "owner": "nixos", "repo": "nixpkgs", - "rev": "6a56b14976d469a9f943400698244a4c1a4c1608", + "rev": "ebbc7fb3d213c5c7c9dcef705fa272073812f4c4", "type": "github" }, "original": { @@ -606,11 +606,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1753429684, - "narHash": "sha256-9h7+4/53cSfQ/uA3pSvCaBepmZaz/dLlLVJnbQ+SJjk=", + "lastModified": 1756125398, + "narHash": "sha256-XexyKZpf46cMiO5Vbj+dWSAXOnr285GHsMch8FBoHbc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "7fd36ee82c0275fb545775cc5e4d30542899511d", + "rev": "3b9f00d7a7bf68acd4c4abb9d43695afb04e03a5", "type": "github" }, "original": { @@ -637,11 +637,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1751792365, - "narHash": "sha256-J1kI6oAj25IG4EdVlg2hQz8NZTBNYvIS0l4wpr9KcUo=", + "lastModified": 1754725699, + "narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1fd8bada0b6117e6c7eb54aad5813023eed37ccb", + "rev": "85dbfc7aaf52ecb755f87e577ddbe6dbbdbc1054", "type": "github" }, "original": { @@ -653,11 +653,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1753345091, - "narHash": "sha256-CdX2Rtvp5I8HGu9swBmYuq+ILwRxpXdJwlpg8jvN4tU=", + "lastModified": 1756217674, + "narHash": "sha256-TH1SfSP523QI7kcPiNtMAEuwZR3Jdz0MCDXPs7TS8uo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "3ff0e34b1383648053bba8ed03f201d3466f90c9", + "rev": "4e7667a90c167f7a81d906e5a75cba4ad8bee620", "type": "github" }, "original": { @@ -692,11 +692,11 @@ ] }, "locked": { - "lastModified": 1750779888, - "narHash": "sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg=", + "lastModified": 1755446520, + "narHash": "sha256-I0Ok1OGDwc1jPd8cs2VvAYZsHriUVFGIUqW+7uSsOUM=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "16ec914f6fb6f599ce988427d9d94efddf25fe6d", + "rev": "4b04db83821b819bbbe32ed0a025b31e7971f22e", "type": "github" }, "original": { @@ -796,11 +796,11 @@ ] }, "locked": { - "lastModified": 1752544651, - "narHash": "sha256-GllP7cmQu7zLZTs9z0J2gIL42IZHa9CBEXwBY9szT0U=", + "lastModified": 1754988908, + "narHash": "sha256-t+voe2961vCgrzPFtZxha0/kmFSHFobzF00sT8p9h0U=", "owner": "Mic92", "repo": "sops-nix", - "rev": "2c8def626f54708a9c38a5861866660395bb3461", + "rev": "3223c7a92724b5d804e9988c6b447a0d09017d48", "type": "github" }, "original": { @@ -882,11 +882,11 @@ ] }, "locked": { - "lastModified": 1751300244, - "narHash": "sha256-PFuv1TZVYvQhha0ac53E3YgdtmLShrN0t4T6xqHl0jE=", + "lastModified": 1755354946, + "narHash": "sha256-zdov5f/GcoLQc9qYIS1dUTqtJMeDqmBmo59PAxze6e4=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "6115f3fdcb2c1a57b4a80a69f3c797e47607b90a", + "rev": "a10726d6a8d0ef1a0c645378f983b6278c42eaa0", "type": "github" }, "original": { @@ -902,11 +902,11 @@ "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1753610773, - "narHash": "sha256-M5SPkMK1ySSXEXEMJEcSgrHZlaBhIJeYMbFdO6q5IFc=", + "lastModified": 1756309929, + "narHash": "sha256-udly1zNvxR6UKFZSkbutSEZ9EihUd+pPCDBaseppB5s=", "owner": "sxyazi", "repo": "yazi", - "rev": "0e3cd8545c07e79d7cf1f58632c87cc14faa16d6", + "rev": "dd7afaa64aa54fac5bd30404eb44ccd9d68f31c5", "type": "github" }, "original": { diff --git a/home-modules/yazi.nix b/home-modules/yazi.nix index 66cf0d1..848f4b8 100644 --- a/home-modules/yazi.nix +++ b/home-modules/yazi.nix @@ -1,7 +1,9 @@ -{ pkgs, ... }@all: with all; -{ - home.packages = with pkgs; [ - unar +{ pkgs, ... }@all: with all; let + tfc = pkgs.latest.xdg-desktop-portal-termfilechooser; +in { + home.packages = [ + pkgs.unar + tfc ]; programs.yazi = { @@ -403,73 +405,23 @@ }; }; xdg = { - # # https://github.com/hunkyburrito/xdg-desktop-portal-termfilechooser/pull/44 - configFile = let - wrapper = pkgs.writeShellApplication { name = "yazi-wrapper.sh"; text = /*bash*/ '' - set -ex - - multiple="$1" - directory="$2" - save="$3" - path="$4" - out="$5" - - cmd="yazi" - termcmd="''${TERMCMD:-kitty --title 'termfilechooser'}" - - if [ "$save" = "1" ]; then - # save a file - set -- --chooser-file="$out" "$path" - elif [ "$directory" = "1" ]; then - # upload files from a directory - set -- --chooser-file="$out" --cwd-file="$out" "$path" - elif [ "$multiple" = "1" ]; then - # upload multiple files - set -- --chooser-file="$out" "$path" - else - # upload only 1 file - set -- --chooser-file="$out" "$path" - fi - - command="$termcmd $cmd" - for arg in "$@"; do - # escape double quotes - escaped=$(printf "%s" "$arg" | sed -E 's/[\"\(\)\{\}\|]//g') - # escape spaces - command="$command \"$escaped\"" - done - - sh -c "$command" - '';}; - in { - "xdg-desktop-portal-termfilechooser/config".text = '' + configFile."xdg-desktop-portal-termfilechooser/config" = { + force = true; + text = '' [filechooser] - cmd=${wrapper}/bin/yazi-wrapper.sh + cmd=${tfc}/share/xdg-desktop-portal-termfilechooser/yazi-wrapper.sh env=TERMCMD=ghostty --title="terminal-file-picker -e" default_dir=$HOME open_mode=suggested save_mode=last ''; - # "xdg-desktop-portal-termfilechooser/config".text = '' - # [filechooser] - # cmd=${pkgs.latest.xdg-desktop-portal-termfilechooser}/share/xdg-desktop-portal-termfilechooser/yazi-wrapper.sh - # env=TERMCMD=ghostty --title="terminal-file-picker -e" - # default_dir=$HOME - # open_mode=suggested - # save_mode=last - # ''; }; portal = { enable = true; - extraPortals = [ pkgs.latest.xdg-desktop-portal-termfilechooser ]; - config = { - common = { - "org.freedesktop.impl.portal.FileChooser" = "termfilechooser"; - }; - }; + xdgOpenUsePortal = true; + config.common."org.freedesktop.impl.portal.FileChooser" = "termfilechooser"; + extraPortals = [ tfc ]; }; }; - home.sessionVariables = { - GTK_USE_PORTAL = "1"; - }; + home.sessionVariables."GTK_USE_PORTAL" = "1"; } From d009d109a991811b04a4f05db0e3c29708787d86 Mon Sep 17 00:00:00 2001 From: "Lennart J. Kurzweg (Nx2)" Date: Wed, 27 Aug 2025 23:59:11 +0200 Subject: [PATCH 10/11] battery only on NxXPS --- home-modules/bar/hyprpanel.nix | 2 +- home-modules/mpv.nix | 41 ++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 home-modules/mpv.nix diff --git a/home-modules/bar/hyprpanel.nix b/home-modules/bar/hyprpanel.nix index 809af55..c2de86c 100644 --- a/home-modules/bar/hyprpanel.nix +++ b/home-modules/bar/hyprpanel.nix @@ -48,7 +48,7 @@ # "cpu" # "cputemp" # "ram" - "battery" + (pkgs.lib.mkIf (hyper.host == "NxXPS") "battery") # "bluetooth" "network" "windowtitle" diff --git a/home-modules/mpv.nix b/home-modules/mpv.nix new file mode 100644 index 0000000..feeb5eb --- /dev/null +++ b/home-modules/mpv.nix @@ -0,0 +1,41 @@ +{ pkgs, ... }@all: with all; { + programs.mpv = { + enable = true; + package = pkgs.mpv; + scrips = with pkgs.mpvScripts; [ + mpris # use media keys + thumbfast # thumbnails on timeline hover + uosc # custom ui + sponsorblock + ]; + bindings = { + O = ''no-osd cycle-values glsl-shaders "~~/shaders/invert.glsl" ""; show-text "Invert Shader"''; + }; + scriptOpts = { + thumbfast = { + spawn_first = true; + network = true; + hwdec = true; + }; + uosc = { + timeline_size = 25; + timeline_persistency = "paused,audio"; + progress = "always"; + progress_size = 4; + progress_line_width = 4; + controls = "subtitles,audio,video,editions,stream-quality"; + top_bar = "never"; + refine = "text_width"; + }; + }; + }; + xdg.configfile."mpv/shaders/invert.glsl".text = /* glsl */ '' + //!HOOK LUMA + //!BIND HOOKED + vec4 hook() + { + float luma = LUMA_texOff(0).x; + return vec4(1.0 - luma); + } + ''; +} From cd25a1a569a47fabab05b521c513456103e496ce Mon Sep 17 00:00:00 2001 From: "Lennart J. Kurzweg (Nx2)" Date: Wed, 27 Aug 2025 23:59:29 +0200 Subject: [PATCH 11/11] mpv --- flake.lock | 132 +++++++++++++++++++--------- home-modules/chatterino.nix | 2 +- home-modules/mpv.nix | 47 +++++++++- home-modules/pkgs-list/programs.nix | 1 - home-modules/pkgs-list/shell.nix | 1 - home.nix | 1 + 6 files changed, 136 insertions(+), 48 deletions(-) diff --git a/flake.lock b/flake.lock index a14e36f..2ad837b 100644 --- a/flake.lock +++ b/flake.lock @@ -20,11 +20,11 @@ ] }, "locked": { - "lastModified": 1755632680, - "narHash": "sha256-EjaD8+d7AiAV2fGRN4NTMboWDwk8szDfwbzZ8DL1PhQ=", + "lastModified": 1755946532, + "narHash": "sha256-POePremlUY5GyA1zfbtic6XLxDaQcqHN6l+bIxdT5gc=", "owner": "hyprwm", "repo": "aquamarine", - "rev": "50637ed23e962f0db294d6b0ef534f37b144644b", + "rev": "81584dae2df6ac79f6b6dae0ecb7705e95129ada", "type": "github" }, "original": { @@ -33,6 +33,25 @@ "type": "github" } }, + "copyparty": { + "inputs": { + "flake-utils": "flake-utils", + "nixpkgs": "nixpkgs" + }, + "locked": { + "lastModified": 1756320983, + "narHash": "sha256-huaJ1CvBsylibf55pjiFEpiKxYU235iAzwMhJ+iDSjw=", + "owner": "9001", + "repo": "copyparty", + "rev": "f4f702c39dd2365f6ca43ed6b72a84c708fded8d", + "type": "github" + }, + "original": { + "owner": "9001", + "repo": "copyparty", + "type": "github" + } + }, "crane": { "locked": { "lastModified": 1731098351, @@ -118,6 +137,21 @@ } }, "flake-utils": { + "locked": { + "lastModified": 1678901627, + "narHash": "sha256-U02riOqrKKzwjsxc/400XnElV+UtPUQWpANPlyazjH0=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "93a2b84fc4b70d9e089d029deacc3583435c2ed6", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_2": { "inputs": { "systems": "systems_3" }, @@ -245,11 +279,11 @@ ] }, "locked": { - "lastModified": 1754305013, - "narHash": "sha256-u+M2f0Xf1lVHzIPQ7DsNCDkM1NYxykOSsRr4t3TbSM4=", + "lastModified": 1755678602, + "narHash": "sha256-uEC5O/NIUNs1zmc1aH1+G3GRACbODjk2iS0ET5hXtuk=", "owner": "hyprwm", "repo": "hyprgraphics", - "rev": "4c1d63a0f22135db123fc789f174b89544c6ec2d", + "rev": "157cc52065a104fc3b8fa542ae648b992421d1c7", "type": "github" }, "original": { @@ -268,17 +302,17 @@ "hyprlang": "hyprlang", "hyprutils": "hyprutils", "hyprwayland-scanner": "hyprwayland-scanner", - "nixpkgs": "nixpkgs", + "nixpkgs": "nixpkgs_2", "pre-commit-hooks": "pre-commit-hooks", "systems": "systems", "xdph": "xdph" }, "locked": { - "lastModified": 1756069181, - "narHash": "sha256-FPur4yuDwzM9uHhPFJW6KD3Xys5fz0xmRmZqFfWQD3Y=", + "lastModified": 1756325904, + "narHash": "sha256-PRz3GE4ZBScWrHTVegpM4B2YLZplp1iPwmZ9AeYBbsg=", "ref": "refs/heads/main", - "rev": "0ed880f3f7dc2c746bf3590eee266c010d737558", - "revCount": 6393, + "rev": "378e130f1426648d8d734049800128f9882805bf", + "revCount": 6395, "submodules": true, "type": "git", "url": "https://github.com/hyprwm/Hyprland" @@ -306,11 +340,11 @@ ] }, "locked": { - "lastModified": 1756311938, - "narHash": "sha256-XiNmc8kdOd4adzif9PABKOH3u4Nv+zadIRfH3XrJFy0=", + "lastModified": 1756325158, + "narHash": "sha256-aJ9jAYtZ64MWBpWPfH1q+t6U9b6kJWc2yK9Vrlj6fZY=", "owner": "hyprwm", "repo": "hyprland-plugins", - "rev": "ee66b49fda3423df8bfd6206d9101a81de9c1832", + "rev": "bf843fc6adf90d43a5dd7742e9df61d395ba780d", "type": "github" }, "original": { @@ -474,11 +508,11 @@ ] }, "locked": { - "lastModified": 1755416120, - "narHash": "sha256-PosTxeL39YrLvCX5MqqPA6NNWQ4T5ea5K55nmN7ju9Q=", + "lastModified": 1756117388, + "narHash": "sha256-oRDel6pNl/T2tI+nc/USU9ZP9w08dxtl7hiZxa0C/Wc=", "owner": "hyprwm", "repo": "hyprutils", - "rev": "e631ea36ddba721eceda69bfee6dd01068416489", + "rev": "b2ae3204845f5f2f79b4703b441252d8ad2ecfd0", "type": "github" }, "original": { @@ -517,7 +551,7 @@ "crane": "crane", "flake-compat": "flake-compat_2", "flake-parts": "flake-parts", - "nixpkgs": "nixpkgs_2", + "nixpkgs": "nixpkgs_3", "pre-commit-hooks-nix": "pre-commit-hooks-nix", "rust-overlay": "rust-overlay" }, @@ -539,7 +573,7 @@ "nixos-wsl": { "inputs": { "flake-compat": "flake-compat_3", - "nixpkgs": "nixpkgs_3" + "nixpkgs": "nixpkgs_4" }, "locked": { "lastModified": 1755261305, @@ -558,27 +592,26 @@ }, "nixpkgs": { "locked": { - "lastModified": 1755186698, - "narHash": "sha256-wNO3+Ks2jZJ4nTHMuks+cxAiVBGNuEBXsT29Bz6HASo=", + "lastModified": 1748162331, + "narHash": "sha256-rqc2RKYTxP3tbjA+PB3VMRQNnjesrT0pEofXQTrMsS8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "fbcf476f790d8a217c3eab4e12033dc4a0f6d23c", + "rev": "7c43f080a7f28b2774f3b3f43234ca11661bf334", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" + "id": "nixpkgs", + "ref": "nixos-25.05", + "type": "indirect" } }, "nixpkgs-latest": { "locked": { - "lastModified": 1756321630, - "narHash": "sha256-Lrqzu9plqzo3Zp64X11qL1wWHrMYMGML9XKzuiv6QJE=", + "lastModified": 1756326156, + "narHash": "sha256-EvRCnKAE5oL9wOIT/LrA5+pJVpTvhH71OReJDTOZDyk=", "owner": "nixos", "repo": "nixpkgs", - "rev": "ebbc7fb3d213c5c7c9dcef705fa272073812f4c4", + "rev": "636dea4f2cd65b8c558149a957423da47c1cbc95", "type": "github" }, "original": { @@ -606,11 +639,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1756125398, - "narHash": "sha256-XexyKZpf46cMiO5Vbj+dWSAXOnr285GHsMch8FBoHbc=", + "lastModified": 1756266583, + "narHash": "sha256-cr748nSmpfvnhqSXPiCfUPxRz2FJnvf/RjJGvFfaCsM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "3b9f00d7a7bf68acd4c4abb9d43695afb04e03a5", + "rev": "8a6d5427d99ec71c64f0b93d45778c889005d9c2", "type": "github" }, "original": { @@ -620,6 +653,22 @@ } }, "nixpkgs_2": { + "locked": { + "lastModified": 1756266583, + "narHash": "sha256-cr748nSmpfvnhqSXPiCfUPxRz2FJnvf/RjJGvFfaCsM=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "8a6d5427d99ec71c64f0b93d45778c889005d9c2", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { "locked": { "lastModified": 1731919951, "narHash": "sha256-vOM6ETpl1yu9KLi/icTmLJIPbbdJCdAVYUXZceO/Ce4=", @@ -635,7 +684,7 @@ "type": "github" } }, - "nixpkgs_3": { + "nixpkgs_4": { "locked": { "lastModified": 1754725699, "narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=", @@ -651,7 +700,7 @@ "type": "github" } }, - "nixpkgs_4": { + "nixpkgs_5": { "locked": { "lastModified": 1756217674, "narHash": "sha256-TH1SfSP523QI7kcPiNtMAEuwZR3Jdz0MCDXPs7TS8uo=", @@ -666,7 +715,7 @@ "type": "indirect" } }, - "nixpkgs_5": { + "nixpkgs_6": { "locked": { "lastModified": 1752596105, "narHash": "sha256-lFNVsu/mHLq3q11MuGkMhUUoSXEdQjCHvpReaGP1S2k=", @@ -692,11 +741,11 @@ ] }, "locked": { - "lastModified": 1755446520, - "narHash": "sha256-I0Ok1OGDwc1jPd8cs2VvAYZsHriUVFGIUqW+7uSsOUM=", + "lastModified": 1755960406, + "narHash": "sha256-RF7j6C1TmSTK9tYWO6CdEMtg6XZaUKcvZwOCD2SICZs=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "4b04db83821b819bbbe32ed0a025b31e7971f22e", + "rev": "e891a93b193fcaf2fc8012d890dc7f0befe86ec2", "type": "github" }, "original": { @@ -734,13 +783,14 @@ }, "root": { "inputs": { + "copyparty": "copyparty", "home-manager": "home-manager", "hyprland": "hyprland", "hyprland-plugins": "hyprland-plugins", "hyprspace": "hyprspace", "lanzaboote": "lanzaboote", "nixos-wsl": "nixos-wsl", - "nixpkgs": "nixpkgs_4", + "nixpkgs": "nixpkgs_5", "nixpkgs-latest": "nixpkgs-latest", "nixpkgs-unstable": "nixpkgs-unstable", "sops-nix": "sops-nix", @@ -897,8 +947,8 @@ }, "yazi": { "inputs": { - "flake-utils": "flake-utils", - "nixpkgs": "nixpkgs_5", + "flake-utils": "flake-utils_2", + "nixpkgs": "nixpkgs_6", "rust-overlay": "rust-overlay_2" }, "locked": { diff --git a/home-modules/chatterino.nix b/home-modules/chatterino.nix index e0a8915..2faa000 100644 --- a/home-modules/chatterino.nix +++ b/home-modules/chatterino.nix @@ -52,7 +52,7 @@ in { packages = with pkgs; [ chatterino2 streamlink - mpv + # mpv ]; file = { ".local/share/chatterino/Settings/settings.json".text = with secrets.chatterino; /* json */ '' diff --git a/home-modules/mpv.nix b/home-modules/mpv.nix index feeb5eb..9e1b7e8 100644 --- a/home-modules/mpv.nix +++ b/home-modules/mpv.nix @@ -2,14 +2,53 @@ programs.mpv = { enable = true; package = pkgs.mpv; - scrips = with pkgs.mpvScripts; [ + config = { + # osc = false; # Disables the on-screen controller (seekbar, volume, etc.) + # osd-bar = false; # Disables the on-screen display progress bar + demuxer-max-back-bytes = 4294967296; # Sets the maximum number of bytes to buffer for seeking backwards + demuxer-max-bytes = 4294967296; # Sets the maximum number of bytes to buffer for seeking forwards + interpolation = true; # Enables frame interpolation for smoother playback + video-sync = "display-resample"; # Synchronizes video playback to the display's refresh rate + sub-visibility = true; # Hides subtitles by default + sub-auto = "fuzzy"; # Automatically loads subtitles if their filename is similar to the video file + sub-font = rice.font.base.name; + # sub-blur = 10; # this blurs the whole thing, text aswell + sub-color = rice.color.accent.bright; + sub-back-color = "${rice.color.background}${rice.lib.float-to-drune 0.8}"; # does not seem to work + # sub-border-size = 0; + sub-border-style = "opaque-box"; + background-color = "${rice.color.background}"; # transparency breaks blur on hyprland sometimes, so just rgb + alang = "en,eng,de,ger"; # Sets preferred audio languages in order + slang = "en,eng,de,ger"; # Sets preferred subtitle languages in order + vlang = "en,eng,de,ger"; # Sets preferred video languages in order + save-position-on-quit = true; # Saves the playback position when quitting + ignore-path-in-watch-later-config = true; # Ignores the path in the watch-later configuration + ytdl-format = "bestvideo[height<=?1080]+bestaudio/best"; # Sets the format for downloading YouTube videos + vo = pkgs.lib.mkIf hyper.nvidia.enable "gpu"; + hwdec = if hyper.nvidia.enable then "no" else "no"; # bugged + }; + scripts = with pkgs.mpvScripts; [ mpris # use media keys thumbfast # thumbnails on timeline hover - uosc # custom ui + # uosc # custom ui sponsorblock ]; bindings = { - O = ''no-osd cycle-values glsl-shaders "~~/shaders/invert.glsl" ""; show-text "Invert Shader"''; + "O" = ''no-osd cycle-values glsl-shaders "~~/shaders/invert.glsl" ""; show-text "Invert Shader"''; + # "tab" = ''script-binding uosc/toggle-ui''; + # "space" = ''cycle pause; script-binding uosc/flash-pause-indicator''; + # "right" = ''seek 5''; + # "left" = ''seek -5''; + # "shift+right" = ''seek 30; script-binding uosc/flash-timeline''; + # "shift+left" = ''seek -30; script-binding uosc/flash-timeline''; + # "m" = ''no-osd cycle mute; script-binding uosc/flash-volume''; + # "up" = ''no-osd add volume 10; script-binding uosc/flash-volume''; + # "down" = ''no-osd add volume -10; script-binding uosc/flash-volume''; + # "[" = ''no-osd add speed -0.25; script-binding uosc/flash-speed''; + # "]" = ''no-osd add speed 0.25; script-binding uosc/flash-speed''; + # "\\" = ''no-osd set speed 1; script-binding uosc/flash-speed''; + # ">" = ''script-binding uosc/next; script-message-to uosc flash-elements top_bar,timeline''; + # "<" = ''script-binding uosc/prev; script-message-to uosc flash-elements top_bar,timeline>''; }; scriptOpts = { thumbfast = { @@ -29,7 +68,7 @@ }; }; }; - xdg.configfile."mpv/shaders/invert.glsl".text = /* glsl */ '' + xdg.configFile."mpv/shaders/invert.glsl".text = /* glsl */ '' //!HOOK LUMA //!BIND HOOKED vec4 hook() diff --git a/home-modules/pkgs-list/programs.nix b/home-modules/pkgs-list/programs.nix index 4ac2595..c936a71 100644 --- a/home-modules/pkgs-list/programs.nix +++ b/home-modules/pkgs-list/programs.nix @@ -2,7 +2,6 @@ home.packages = with pkgs; [ chromium element-desktop - mpv qbittorrent unstable.spotify wl-clipboard diff --git a/home-modules/pkgs-list/shell.nix b/home-modules/pkgs-list/shell.nix index 90a8f6b..9c35172 100644 --- a/home-modules/pkgs-list/shell.nix +++ b/home-modules/pkgs-list/shell.nix @@ -20,7 +20,6 @@ lolcat lynx mediainfo - mpv neofetch pastel pdfgrep diff --git a/home.nix b/home.nix index cc672d4..194c3dc 100644 --- a/home.nix +++ b/home.nix @@ -28,6 +28,7 @@ ./home-modules/latex.nix ./home-modules/mako.nix # ./home-modules/matrix.nix + ./home-modules/mpv.nix ./home-modules/nh.nix ./home-modules/nixd.nix ./home-modules/nvidia.nix