From c6fe17de3f21b6bf8180cdc7fa92e0ed555d75bd Mon Sep 17 00:00:00 2001 From: moons Date: Sat, 12 Sep 2026 19:45:29 +0900 Subject: [PATCH] nano kvm --- flake.lock | 134 ++++++++++----------- modules/applications/nanokvm-usb/nixos.nix | 29 +++-- modules/profiles/interface/cli/home.nix | 2 + 3 files changed, 91 insertions(+), 74 deletions(-) diff --git a/flake.lock b/flake.lock index d8c698e..18c8c40 100644 --- a/flake.lock +++ b/flake.lock @@ -100,11 +100,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1788557635, - "narHash": "sha256-QuEWuiy2RPzTeuU0TrdW0RpKSuADLYkM7Z0zvLoFsHk=", + "lastModified": 1788990323, + "narHash": "sha256-jskYWEYMyB/EYnU6uN81PcFJfhhhoXd0P5DmIMZPY/g=", "owner": "nix-community", "repo": "browser-previews", - "rev": "b5cde0ee25bbd690fde42ce107b559f2ba0eaa17", + "rev": "a00086344489f07c49d45605c36c4880adef4eae", "type": "github" }, "original": { @@ -207,11 +207,11 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1788560091, - "narHash": "sha256-Z7pyOw3IzZWyx/FMJOER8Pfh9f5ucs7SQ17jOWXQmf8=", + "lastModified": 1789064407, + "narHash": "sha256-xli9ArnZVRYz1za1YAD5YpkdrtIGLIxNaFnfRZq5Xzk=", "owner": "ilysenko", "repo": "codex-desktop-linux", - "rev": "70662cbe6f59c2b42b17e86a80a00c3a0760a75c", + "rev": "787dbd51268d7bc817304e50b64eed31426f061d", "type": "github" }, "original": { @@ -274,11 +274,11 @@ }, "crane_2": { "locked": { - "lastModified": 1787326676, - "narHash": "sha256-lWhBbBvC05/xwivKBBiM2YNizpmgqCgyOIzomvRuwxs=", + "lastModified": 1788465171, + "narHash": "sha256-Y1/TTVXjYXGF068IThQH9fPSZ0SIE74PABlUxnWTUH0=", "owner": "ipetkov", "repo": "crane", - "rev": "692f7e9ef2ece8125b466f66f2af532b3edaed0d", + "rev": "eb35abda9f232cc6610b1d1e3200d15c49b7ac54", "type": "github" }, "original": { @@ -507,11 +507,11 @@ ] }, "locked": { - "lastModified": 1785627969, - "narHash": "sha256-4dtXQk/NMePegK/nWp5NSeuZKLATItOq61lpEvmXqGw=", + "lastModified": 1788450739, + "narHash": "sha256-glZLQlzIn1fXH6PazR2iUmTo7kzzyYSshrWhLS9TqCU=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "427bf4bd9435fdf21321c8cc628c24efc14c0f7a", + "rev": "31729ca8cbdb4fa927b34e5f4353e6a83f39e993", "type": "github" }, "original": { @@ -606,11 +606,11 @@ "zon2nix": "zon2nix" }, "locked": { - "lastModified": 1788544194, - "narHash": "sha256-/lZBuE48OgO1rPkZz+MPk325gnCTgo/RMoZlS411kvE=", + "lastModified": 1789034704, + "narHash": "sha256-y9Tg93fOOL7FJbJn37QhVr0dZ/MsFgGZjbhsR0QDiuk=", "owner": "ghostty-org", "repo": "ghostty", - "rev": "492300cad104195411d12217dd22f1cd05f31376", + "rev": "44f2a44df7e8c4a0c6df3f7d872ef3d7ead88e51", "type": "github" }, "original": { @@ -731,11 +731,11 @@ ] }, "locked": { - "lastModified": 1787377438, - "narHash": "sha256-Sxu1NLTD/Ern6hFGLlZmtKCSct3YQXZI/lls8RE1XeM=", + "lastModified": 1788642154, + "narHash": "sha256-sPpQFVaFTDqO/4vvCAhuAhqTgqN/ygu+9eJcs5eB0js=", "owner": "nix-community", "repo": "home-manager", - "rev": "65258d5c65a250189fde2e35f490d15e064c4c62", + "rev": "fd0956c99c41ae3c13a73a638f1f7e963aebc4ab", "type": "github" }, "original": { @@ -776,11 +776,11 @@ "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1788173567, - "narHash": "sha256-C4/tvPY34n/YfQZUIMRNAHzidAG+qUaU6qBqd07OS2c=", + "lastModified": 1788769372, + "narHash": "sha256-VkqjGPfG3aQGv+cgS/VbwNIR7yiXoLcUJih/tAdLv50=", "owner": "nix-community", "repo": "lanzaboote", - "rev": "d2326588612480c96d5fefb885f57b4660a85584", + "rev": "03bc477f555adfe314af48ec0d3554f10d3390d8", "type": "github" }, "original": { @@ -814,11 +814,11 @@ "treefmt-nix": "treefmt-nix_3" }, "locked": { - "lastModified": 1788560949, - "narHash": "sha256-wrTj5CAwq3FOq7aidA7egL55p29YK1MdssvX7Wy8Ws0=", + "lastModified": 1789031966, + "narHash": "sha256-9iJmspIpxKjkAIgDA8MI23Us2C7BRAc2PWcHedd3NcI=", "owner": "numtide", "repo": "llm-agents.nix", - "rev": "d43009a66934bd6f57d8f113ba0a67ce296a283f", + "rev": "f9d6a07194a3d5bfe2743e9b8460207fe87da15c", "type": "github" }, "original": { @@ -981,11 +981,11 @@ ] }, "locked": { - "lastModified": 1788080100, - "narHash": "sha256-n14luQo3F/ZLfCEHk1QieiI1nGnW92ZQZeZ0UIb0UMQ=", + "lastModified": 1788680125, + "narHash": "sha256-amGSoDobwmp4CFvCn841ws2iuitus+HUJdD/gKgsrJA=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "dbb978fa87faf13398e90ccbc52c343d21c7dd6d", + "rev": "116ad1c2adb642405ef8916f6a94c8626f971344", "type": "github" }, "original": { @@ -999,11 +999,11 @@ "nixpkgs": "nixpkgs_10" }, "locked": { - "lastModified": 1788335262, - "narHash": "sha256-3jBEq8avfzlrsY4UpW4d5TOmm7ocseZfnitEJhqauyc=", + "lastModified": 1788942796, + "narHash": "sha256-CLoJCCRi9sogsyGXYn8rOCWBLKAntfKUB9Rli/YXgEY=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "44d95795ee2d475b3d687325e26dcf4ca9104557", + "rev": "83bbc895120516d6e86885a188c04beced6535d9", "type": "github" }, "original": { @@ -1019,11 +1019,11 @@ "nixpkgs": "nixpkgs_11" }, "locked": { - "lastModified": 1784642409, - "narHash": "sha256-hcbDqFuySAJawljt5r0sKBCJKYnbtGD0T/ZIozH1Dq0=", + "lastModified": 1789039320, + "narHash": "sha256-SBHeKJ6fyQIb8PaUc0iarznGhaGdnc+SXdDb5Z96Qn0=", "owner": "nix-community", "repo": "NixOS-WSL", - "rev": "eaeb18da90024448a60eb1ec7132eafa4003404e", + "rev": "8c333e5b3abb693139e4df80988810ce44788b4e", "type": "github" }, "original": { @@ -1112,11 +1112,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1788400875, - "narHash": "sha256-JIHQ6xNAN53cdo6zZ72LRcQ9lpvnABCnNE4hldJ5uZU=", + "lastModified": 1789012029, + "narHash": "sha256-1CBkBf+Nhggykzlx0jvXrj5rk20btl+tK8Fa8Ml/BL4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "5545adfad2e98de106a5544ca7067e03010410bd", + "rev": "d5dfd8e6716dde34398bc14bc87c10dece9c8c68", "type": "github" }, "original": { @@ -1157,11 +1157,11 @@ }, "nixpkgs_12": { "locked": { - "lastModified": 1788405554, - "narHash": "sha256-r2f1oUwixlgq9zOdYLqJLfS/lWBT60/IITjhTKI59JU=", + "lastModified": 1789009968, + "narHash": "sha256-GB16oaxpsrnGNnGIE+0uYBqMRzB9X6FYDUvjvnJAYew=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "a5cc6f2c37bf518436dc8d1c288ccd0c43c2f4c4", + "rev": "d58a46e3bc02d91ebe04667f8397752a749c0024", "type": "github" }, "original": { @@ -1173,11 +1173,11 @@ }, "nixpkgs_13": { "locked": { - "lastModified": 1787900134, - "narHash": "sha256-5GWj0FI2uOwKNpXkmpWrSFDe1rCaNBCUQ8d+HDtFQPI=", - "rev": "83199d0d373dd3ac2b9a1996b1d0263f76ab7a4c", + "lastModified": 1788614874, + "narHash": "sha256-PRK1fSEiAcO29DkUoOlsVLGYRK3h1YKVr+qQJB0VcYQ=", + "rev": "c043004d1c6985732bcc1cbc5a9c9aecbbb4e0f0", "type": "tarball", - "url": "https://releases.nixos.org/nixos/unstable/nixos-26.11pre1063296.83199d0d373d/nixexprs.tar.zst" + "url": "https://releases.nixos.org/nixos/unstable/nixos-26.11pre1068089.c043004d1c69/nixexprs.tar.zst" }, "original": { "type": "tarball", @@ -1295,11 +1295,11 @@ }, "nixpkgs_7": { "locked": { - "lastModified": 1788372231, - "narHash": "sha256-7aqErvrAEz/5OcPA5p3M+tVOqeYc4oJXkNIPXfCqxAw=", + "lastModified": 1788982683, + "narHash": "sha256-PJCTsE4I20CrJJPcye9/z6brRFysG5+aygr/dZK097k=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "9387b3fcc0c23c86661636da63faabad4235a0a6", + "rev": "5052d7ccbcfb7e4ae1586cb2ecf95a2e3707dce9", "type": "github" }, "original": { @@ -1350,11 +1350,11 @@ "systems": "systems_6" }, "locked": { - "lastModified": 1787536726, - "narHash": "sha256-aBh5Yk9tX8ZV4k10BJr2fvTq0/+iWGegaCMUOU7YKas=", + "lastModified": 1788623321, + "narHash": "sha256-i8v07Plhfpx/nVFMvnMSC6P05RQ43mbLQsS5grni4Vk=", "owner": "nix-community", "repo": "nixvim", - "rev": "e2c3f9f36326d07340626847543c557e2b95fb50", + "rev": "68c2edd2787f055d9c306bcfe726f3b8f11b9441", "type": "github" }, "original": { @@ -1369,11 +1369,11 @@ "nixpkgs": "nixpkgs_13" }, "locked": { - "lastModified": 1788556054, - "narHash": "sha256-vwtwiwj/cihQDNIPoBUYsbPOknEh7YrfK5XG/D+YmtY=", + "lastModified": 1789065747, + "narHash": "sha256-kX5eqD+MGMtGNRw6Y86eNTvC1zYUye49ESaiCXY9n0o=", "owner": "noctalia-dev", "repo": "noctalia", - "rev": "4ea0a7f0c7d00ac559a1029ccf8d0d1270b23c08", + "rev": "0565d25c1d3f13c7432fd64d32d08e27dbaff444", "type": "github" }, "original": { @@ -1439,11 +1439,11 @@ ] }, "locked": { - "lastModified": 1787424939, - "narHash": "sha256-O2tBn84NNuHrnqNVxx/XqsXwfYvS1YwBh+7CBnbCYsk=", + "lastModified": 1788267358, + "narHash": "sha256-nt+lUqYVpc9Y6JeMd2WmXzCDojasdadKo0mWcluvY2Y=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "809414f0cdadf82cf11b06c2b29ba9b3168b3297", + "rev": "27555e2624241fb116b49095df4caaee85a25691", "type": "github" }, "original": { @@ -1516,11 +1516,11 @@ ] }, "locked": { - "lastModified": 1788077403, - "narHash": "sha256-c20YZQKzQ27qC6Wh729fWRTpI7oV4+7Ur4icKssD4Wc=", + "lastModified": 1788678114, + "narHash": "sha256-pcqbpV4ZI79al6KAlr+WJjaEo/PYfgctRlG43D5BSJM=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "89e26eeaafa88a2ede4778734acc794ff0299beb", + "rev": "4748ec2f5ed4a881474ed4c98aa71a5308cdac8d", "type": "github" }, "original": { @@ -1567,11 +1567,11 @@ ] }, "locked": { - "lastModified": 1788337237, - "narHash": "sha256-gkSH8VUtCo6hnysNmb9DbTuDepH2t5pv+QWjP75xKAk=", + "lastModified": 1788914643, + "narHash": "sha256-4GuMPW90JSxXWDPUB9M+1m7fYbe3H0apOd86/zBQ2Kw=", "owner": "Mic92", "repo": "sops-nix", - "rev": "fbf759290e0cb0a98dfc813a4eb7d53ad1dacb57", + "rev": "13616fff713a9f94055c66f15687ebdc17a335df", "type": "github" }, "original": { @@ -1943,11 +1943,11 @@ "systems": "systems_9" }, "locked": { - "lastModified": 1788559235, - "narHash": "sha256-mDfn8GJlbPwNeT7R4KxdbiRY1BgIP9Iw0wBzk7Xd4Nk=", + "lastModified": 1789071650, + "narHash": "sha256-/yR9eK/IBEaKCWCmuoVeJilrnVeULHa0x5WICYOy0qc=", "owner": "vicinaehq", "repo": "vicinae", - "rev": "95bfa0a1eb694f895e3bc889c9b00a52341b21f1", + "rev": "eaed9deb832dfdf1edee5e8fec08c9db95236034", "type": "github" }, "original": { @@ -1966,11 +1966,11 @@ "vicinae": "vicinae_2" }, "locked": { - "lastModified": 1788550304, - "narHash": "sha256-EeOUdF/XWkoaGGHM1Eg7aIWzZ8QTLX3fc5cmYzrePkU=", + "lastModified": 1788877077, + "narHash": "sha256-Os614eK4hYC8l9cECt2zBiQbrdv+9q2AyrliHfiEf5A=", "owner": "vicinaehq", "repo": "extensions", - "rev": "6681a95e13b01c752e7cf4cb448162a3647b2eb8", + "rev": "ee117bc64f341ed71b4a27e311f343b12a75f43d", "type": "github" }, "original": { diff --git a/modules/applications/nanokvm-usb/nixos.nix b/modules/applications/nanokvm-usb/nixos.nix index 446a725..bea632a 100644 --- a/modules/applications/nanokvm-usb/nixos.nix +++ b/modules/applications/nanokvm-usb/nixos.nix @@ -1,13 +1,28 @@ { pkgs, ... }: let - nanokvm-usb = pkgs.appimageTools.wrapType2 rec { - pname = "nanokvm-usb"; - version = "1.1.4"; + pname = "nanokvm-usb"; + version = "1.1.4"; - src = pkgs.fetchurl { - url = "https://github.com/sipeed/NanoKVM-USB/releases/download/v${version}/NanoKVM-USB-${version}-linux-x86_64.AppImage"; - hash = "sha256-00MT4U2afv0qt3xFVhLr0SSmS2cLrKBlmfzqYEFuaVc="; - }; + src = pkgs.fetchurl { + url = "https://github.com/sipeed/NanoKVM-USB/releases/download/v${version}/NanoKVM-USB-${version}-linux-x86_64.AppImage"; + hash = "sha256-00MT4U2afv0qt3xFVhLr0SSmS2cLrKBlmfzqYEFuaVc="; + }; + + appimageContents = pkgs.appimageTools.extractType2 { + inherit pname src version; + }; + + nanokvm-usb = pkgs.appimageTools.wrapType2 { + inherit pname src version; + + extraInstallCommands = '' + install -m 444 -D ${appimageContents}/nanokvm-usb.desktop \ + $out/share/applications/nanokvm-usb.desktop + install -m 444 -D ${appimageContents}/nanokvm-usb.png \ + $out/share/icons/hicolor/512x512/apps/nanokvm-usb.png + substituteInPlace $out/share/applications/nanokvm-usb.desktop \ + --replace-fail 'Exec=AppRun --no-sandbox %U' 'Exec=nanokvm-usb --no-sandbox %U' + ''; meta = { description = "Sipeed NanoKVM-USB desktop client"; diff --git a/modules/profiles/interface/cli/home.nix b/modules/profiles/interface/cli/home.nix index e6b5a9d..c87ce01 100644 --- a/modules/profiles/interface/cli/home.nix +++ b/modules/profiles/interface/cli/home.nix @@ -17,6 +17,8 @@ unrar traceroute tcpdump + iw + nmap ] ++ lib.optionals stdenv.isLinux [ lm_sensors