impl single-gpu-passthru
This commit is contained in:
parent
a8219d7148
commit
82c3c45428
8 changed files with 312 additions and 130 deletions
202
flake.lock
generated
202
flake.lock
generated
|
|
@ -151,11 +151,11 @@
|
||||||
"nuscht-search": "nuscht-search"
|
"nuscht-search": "nuscht-search"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736069220,
|
"lastModified": 1736785029,
|
||||||
"narHash": "sha256-76MaB3COao55nlhWmSmq9PKgu2iGIs54C1cAE0E5J6Y=",
|
"narHash": "sha256-xHe4X4Je/4WjBL3BPlI1KGqA5N7VQpi4x57YYU9ZOlI=",
|
||||||
"owner": "catppuccin",
|
"owner": "catppuccin",
|
||||||
"repo": "nix",
|
"repo": "nix",
|
||||||
"rev": "8eada392fd6571a747e1c5fc358dd61c14c8704e",
|
"rev": "4a5ac694d7f8a63dec75cbe0ac1c84c818b6b789",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -180,12 +180,12 @@
|
||||||
},
|
},
|
||||||
"catppuccin-v1_2": {
|
"catppuccin-v1_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1734728407,
|
"lastModified": 1734734291,
|
||||||
"narHash": "sha256-Let3uJo4YDyfqbqaw66dpZxhJB2TrDyZWSFd5rpPLJA=",
|
"narHash": "sha256-CFX4diEQHKvZYjnhf7TLg20m3ge1O4vqgplsk/Kuaek=",
|
||||||
"rev": "23ee86dbf4ed347878115a78971d43025362fab1",
|
"rev": "1e4c3803b8da874ff75224ec8512cb173036bbd8",
|
||||||
"revCount": 341,
|
"revCount": 344,
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
"url": "https://api.flakehub.com/f/pinned/catppuccin/nix/1.2.0/0193e5e0-33b7-7149-a362-bfe56b20f64e/source.tar.gz"
|
"url": "https://api.flakehub.com/f/pinned/catppuccin/nix/1.2.1/0193e646-1107-7f69-a402-f2a3988ecf1d/source.tar.gz"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
|
|
@ -250,11 +250,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736591904,
|
"lastModified": 1736711425,
|
||||||
"narHash": "sha256-LFO8pSrPKrH8OPq2HaAuBG5skk8/MNJ/9YmK3KsnSks=",
|
"narHash": "sha256-8hKhPQuMtXfJi+4lPvw3FBk/zSJVHeb726Zo0uF1PP8=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "disko",
|
"repo": "disko",
|
||||||
"rev": "33827d2bd16bfe2e21b62956526c72d313595dfd",
|
"rev": "f720e64ec37fa16ebba6354eadf310f81555cc07",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -269,11 +269,11 @@
|
||||||
"nixpkgs-stable": "nixpkgs-stable_2"
|
"nixpkgs-stable": "nixpkgs-stable_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736615554,
|
"lastModified": 1736788127,
|
||||||
"narHash": "sha256-R/YjqNsVVSzJT50zPRaxwr0foAMIGfeoqU2jOF4G5qk=",
|
"narHash": "sha256-ssFq6P15HEhT1gVU8LD464hlnhapYRky449Y1R7QXfA=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "emacs-overlay",
|
"repo": "emacs-overlay",
|
||||||
"rev": "38789ef3dafe7a3a8927ccc874ddc90d0d5ef3b2",
|
"rev": "2126f88367e999c4ec9b50cd3966b32f7a27c66e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -862,11 +862,11 @@
|
||||||
"zig": "zig"
|
"zig": "zig"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736633944,
|
"lastModified": 1736780823,
|
||||||
"narHash": "sha256-AQsDtTcYFN1ETxeETysvI0f79/5DHQ4ON4c9quB9vrg=",
|
"narHash": "sha256-0O+w/MYI7xC4h1MmNg8rPVUIGPIIZYv+Vq0ZAY+MnW4=",
|
||||||
"owner": "ghostty-org",
|
"owner": "ghostty-org",
|
||||||
"repo": "ghostty",
|
"repo": "ghostty",
|
||||||
"rev": "bdbd0263a1c55e656408c772718370c92374bedb",
|
"rev": "132c4f1f68d75813370cadfc090f96a32be19705",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1015,11 +1015,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1734366194,
|
"lastModified": 1736373539,
|
||||||
"narHash": "sha256-vykpJ1xsdkv0j8WOVXrRFHUAdp9NXHpxdnn1F4pYgSw=",
|
"narHash": "sha256-dinzAqCjenWDxuy+MqUQq0I4zUSfaCvN9rzuCmgMZJY=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "80b0fdf483c5d1cb75aaad909bd390d48673857f",
|
"rev": "bd65bc3cde04c16755955630b344bc9e35272c56",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1037,11 +1037,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1734622215,
|
"lastModified": 1736508663,
|
||||||
"narHash": "sha256-OOfI0XhSJGHblfdNDhfnn8QnZxng63rWk9eeJ2tCbiI=",
|
"narHash": "sha256-ZOaGwa+WnB7Zn3YXimqjmIugAnHePdXCmNu+AHkq808=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "1395379a7a36e40f2a76e7b9936cc52950baa1be",
|
"rev": "2532b500c3ed2b8940e831039dcec5a5ea093afc",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1057,11 +1057,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736508663,
|
"lastModified": 1736785676,
|
||||||
"narHash": "sha256-ZOaGwa+WnB7Zn3YXimqjmIugAnHePdXCmNu+AHkq808=",
|
"narHash": "sha256-TY0jUwR3EW0fnS0X5wXMAVy6h4Z7Y6a3m+Yq++C9AyE=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "2532b500c3ed2b8940e831039dcec5a5ea093afc",
|
"rev": "fc52a210b60f2f52c74eac41a8647c1573d2071d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1168,11 +1168,11 @@
|
||||||
"xdph": "xdph"
|
"xdph": "xdph"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736613484,
|
"lastModified": 1736701836,
|
||||||
"narHash": "sha256-gYlminxNivqjOur5Zp6xDOh1U3VesO7/t+fNlV1WFH8=",
|
"narHash": "sha256-gD2SA08Lfngi1Eguhoc4QHS5Tf4I76GaLr5ATpUXwwE=",
|
||||||
"ref": "refs/heads/main",
|
"ref": "refs/heads/main",
|
||||||
"rev": "2778aff08fba59a34b404751039d7acb6bfb3bdf",
|
"rev": "a6b263713a2b862ed41362082e2147e081934077",
|
||||||
"revCount": 5665,
|
"revCount": 5670,
|
||||||
"submodules": true,
|
"submodules": true,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/hyprwm/Hyprland"
|
"url": "https://github.com/hyprwm/Hyprland"
|
||||||
|
|
@ -1370,21 +1370,6 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"impermanence": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1734945620,
|
|
||||||
"narHash": "sha256-olIfsfJK4/GFmPH8mXMmBDAkzVQ1TWJmeGT3wBGfQPY=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "impermanence",
|
|
||||||
"rev": "d000479f4f41390ff7cf9204979660ad5dd16176",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "impermanence",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"ixx": {
|
"ixx": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": [
|
"flake-utils": [
|
||||||
|
|
@ -1531,11 +1516,11 @@
|
||||||
"treefmt-nix": "treefmt-nix_3"
|
"treefmt-nix": "treefmt-nix_3"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736553940,
|
"lastModified": 1736753650,
|
||||||
"narHash": "sha256-xicqHwvq2S/Y36DwcY+xGy6+4jdFT78bclBhwjs4KJY=",
|
"narHash": "sha256-qSbPnZ2utGL39UD6lKi+K/7sWyZVl/kGZfOoy+xJEjA=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "neovim-nightly-overlay",
|
"repo": "neovim-nightly-overlay",
|
||||||
"rev": "b2237869f288c278b6fd429445d460cb44a0e788",
|
"rev": "9e2c41b7c12adc3ca17b1b50589f5234bcc0bbac",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1547,11 +1532,11 @@
|
||||||
"neovim-src": {
|
"neovim-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736553525,
|
"lastModified": 1736752727,
|
||||||
"narHash": "sha256-Kfx1r0yVTTa83EdP7Ta5ValnXy4ak3F10hHCymDAU7o=",
|
"narHash": "sha256-sFD18EfXyQrN51ru6uzCt20C3DT4qBipJ1PbP9hnw80=",
|
||||||
"owner": "neovim",
|
"owner": "neovim",
|
||||||
"repo": "neovim",
|
"repo": "neovim",
|
||||||
"rev": "fbe546e25d21f3184814d696c329d23d146bd615",
|
"rev": "2c16c849986794682a4776ff4ec100d00eeba5ca",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1562,11 +1547,11 @@
|
||||||
},
|
},
|
||||||
"nixlib": {
|
"nixlib": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1734829460,
|
"lastModified": 1736643958,
|
||||||
"narHash": "sha256-dPhc+f2wkmhMqMIfq+hColJdysgVxKP9ilZ5bR0NRZI=",
|
"narHash": "sha256-tmpqTSWVRJVhpvfSN9KXBvKEXplrwKnSZNAoNPf/S/s=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixpkgs.lib",
|
"repo": "nixpkgs.lib",
|
||||||
"rev": "0a31e8d833173ae63e43fd9dbff1ccf09c4f778c",
|
"rev": "1418bc28a52126761c02dd3d89b2d8ca0f521181",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1583,11 +1568,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1734915500,
|
"lastModified": 1736730523,
|
||||||
"narHash": "sha256-A7CTIQ8SW0hfbhKlwK+vSsu4pD+Oaelw3v6goX6go+U=",
|
"narHash": "sha256-mvTZ7fLKA6ggGnA8GZwcXV57EvVReRTCfi26xc08Q3g=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixos-generators",
|
"repo": "nixos-generators",
|
||||||
"rev": "051d1b2dda3b2e81b38d82e2b691e5c2f4d335f4",
|
"rev": "74b8e31dd709760c86eed16b6c1d0b88d7360937",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1598,11 +1583,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736523798,
|
"lastModified": 1736701207,
|
||||||
"narHash": "sha256-Xb8mke6UCYjge9kPR9o4P1nVrhk7QBbKv3xQ9cj7h2s=",
|
"narHash": "sha256-jG/+MvjVY7SlTakzZ2fJ5dC3V1PrKKrUEOEE30jrOKA=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "130595eba61081acde9001f43de3248d8888ac4a",
|
"rev": "ed4a395ea001367c1f13d34b1e01aa10290f67d6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1672,11 +1657,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1734600368,
|
"lastModified": 1736061677,
|
||||||
"narHash": "sha256-nbG9TijTMcfr+au7ZVbKpAhMJzzE2nQBYmRvSdXUD8g=",
|
"narHash": "sha256-DjkQPnkAfd7eB522PwnkGhOMuT9QVCZspDpJJYyOj60=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "b47fd6fa00c6afca88b8ee46cfdb00e104f50bca",
|
"rev": "cbd8ec4de4469333c82ff40d057350c30e9f7d36",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1688,11 +1673,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-stable_2": {
|
"nixpkgs-stable_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736200483,
|
"lastModified": 1736684107,
|
||||||
"narHash": "sha256-JO+lFN2HsCwSLMUWXHeOad6QUxOuwe9UOAF/iSl1J4I=",
|
"narHash": "sha256-vH5mXxEvZeoGNkqKoCluhTGfoeXCZ1seYhC2pbMN0sg=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "3f0a8ac25fb674611b98089ca3a5dd6480175751",
|
"rev": "635e887b48521e912a516625eee7df6cf0eba9c1",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1736,11 +1721,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-stable_5": {
|
"nixpkgs-stable_5": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736634154,
|
"lastModified": 1736795688,
|
||||||
"narHash": "sha256-7Qoh6wVDj2Tov7uV2szrsVV4mJruh295DPd4EcBkL9c=",
|
"narHash": "sha256-QRYJ/l4UcjcotdOWkT8Xdi5NNRRqWvIPhLjWtxwJHOk=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "56571f191ac650bb336b1451253add751ef91b1a",
|
"rev": "4616bdf77fdfc7c1b6276718c7496d305e4aa694",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1800,11 +1785,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_12": {
|
"nixpkgs_12": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736320768,
|
"lastModified": 1736657626,
|
||||||
"narHash": "sha256-nIYdTAiKIGnFNugbomgBJR+Xv5F1ZQU+HfaBqJKroC0=",
|
"narHash": "sha256-FWlPMUzp0lkQBdhKlPqtQdqmp+/C+1MBiEytaYfrCTY=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "4bc9c909d9ac828a039f288cf872d16d38185db8",
|
"rev": "2f9e2f85cb14a46410a1399aa9ea7ecf433e422e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1816,11 +1801,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_13": {
|
"nixpkgs_13": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736344531,
|
"lastModified": 1736701207,
|
||||||
"narHash": "sha256-8YVQ9ZbSfuUk2bUf2KRj60NRraLPKPS0Q4QFTbc+c2c=",
|
"narHash": "sha256-jG/+MvjVY7SlTakzZ2fJ5dC3V1PrKKrUEOEE30jrOKA=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "bffc22eb12172e6db3c5dde9e3e5628f8e3e7912",
|
"rev": "ed4a395ea001367c1f13d34b1e01aa10290f67d6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1864,11 +1849,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_16": {
|
"nixpkgs_16": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1728538411,
|
"lastModified": 1736320768,
|
||||||
"narHash": "sha256-f0SBJz1eZ2yOuKUr5CA9BHULGXVSn6miBuUWdTyhUhU=",
|
"narHash": "sha256-nIYdTAiKIGnFNugbomgBJR+Xv5F1ZQU+HfaBqJKroC0=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "b69de56fac8c2b6f8fd27f2eca01dcda8e0a4221",
|
"rev": "4bc9c909d9ac828a039f288cf872d16d38185db8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1954,11 +1939,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_4": {
|
"nixpkgs_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1734424634,
|
"lastModified": 1736012469,
|
||||||
"narHash": "sha256-cHar1vqHOOyC7f1+tVycPoWTfKIaqkoe1Q6TnKzuti4=",
|
"narHash": "sha256-/qlNWm/IEVVH7GfgAIyP6EsVZI6zjAx1cV5zNyrs+rI=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "d3c42f187194c26d9f0309a8ecc469d6c878ce33",
|
"rev": "8f3e1f807051e32d8c95cd12b9b421623850a34d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1970,11 +1955,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_5": {
|
"nixpkgs_5": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736344531,
|
"lastModified": 1736701207,
|
||||||
"narHash": "sha256-8YVQ9ZbSfuUk2bUf2KRj60NRraLPKPS0Q4QFTbc+c2c=",
|
"narHash": "sha256-jG/+MvjVY7SlTakzZ2fJ5dC3V1PrKKrUEOEE30jrOKA=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "bffc22eb12172e6db3c5dde9e3e5628f8e3e7912",
|
"rev": "ed4a395ea001367c1f13d34b1e01aa10290f67d6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -2058,11 +2043,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1733773348,
|
"lastModified": 1735854821,
|
||||||
"narHash": "sha256-Y47y+LesOCkJaLvj+dI/Oa6FAKj/T9sKVKDXLNsViPw=",
|
"narHash": "sha256-Iv59gMDZajNfezTO0Fw6LHE7uKAShxbvMidmZREit7c=",
|
||||||
"owner": "NuschtOS",
|
"owner": "NuschtOS",
|
||||||
"repo": "search",
|
"repo": "search",
|
||||||
"rev": "3051be7f403bff1d1d380e4612f0c70675b44fc9",
|
"rev": "836908e3bddd837ae0f13e215dd48767aee355f0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -2203,11 +2188,11 @@
|
||||||
"systems": "systems_17"
|
"systems": "systems_17"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736531727,
|
"lastModified": 1736732675,
|
||||||
"narHash": "sha256-OP1LAyC8RE/TuqHZ9sEfEWBRZnGlLNsmCRngI0608LY=",
|
"narHash": "sha256-8O/YgYql1hJz0h+ldLsgU9bXZdm3RVwLPG5vl7LqtkY=",
|
||||||
"owner": "raphamorim",
|
"owner": "raphamorim",
|
||||||
"repo": "rio",
|
"repo": "rio",
|
||||||
"rev": "6239ed8df9ef6f922d34df3268aa2000cb1d8b32",
|
"rev": "d8a5e2e2c4f5b926c8183465983a5adba8366667",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -2231,7 +2216,6 @@
|
||||||
"home-manager": "home-manager_3",
|
"home-manager": "home-manager_3",
|
||||||
"hypridle": "hypridle",
|
"hypridle": "hypridle",
|
||||||
"hyprland": "hyprland",
|
"hyprland": "hyprland",
|
||||||
"impermanence": "impermanence",
|
|
||||||
"kb-gui": "kb-gui",
|
"kb-gui": "kb-gui",
|
||||||
"lanzaboote": "lanzaboote",
|
"lanzaboote": "lanzaboote",
|
||||||
"lix-module": "lix-module",
|
"lix-module": "lix-module",
|
||||||
|
|
@ -2318,11 +2302,11 @@
|
||||||
"nixpkgs": "nixpkgs_16"
|
"nixpkgs": "nixpkgs_16"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736476219,
|
"lastModified": 1736632357,
|
||||||
"narHash": "sha256-+qyv3QqdZCdZ3cSO/cbpEY6tntyYjfe1bB12mdpNFaY=",
|
"narHash": "sha256-o+XYHMxGi8oiJlQ7UkDv0lzUuED6iaxZwPzD3kY7R38=",
|
||||||
"owner": "oxalica",
|
"owner": "oxalica",
|
||||||
"repo": "rust-overlay",
|
"repo": "rust-overlay",
|
||||||
"rev": "de30cc5963da22e9742bbbbb9a3344570ed237b9",
|
"rev": "09f2869b164f8b6d5e30f0bd7ed30d6eb8237058",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -2338,11 +2322,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736632357,
|
"lastModified": 1736735482,
|
||||||
"narHash": "sha256-o+XYHMxGi8oiJlQ7UkDv0lzUuED6iaxZwPzD3kY7R38=",
|
"narHash": "sha256-QOA4jCDyyUM9Y2Vba+HSZ/5LdtCMGaTE/7NkkUzBr50=",
|
||||||
"owner": "oxalica",
|
"owner": "oxalica",
|
||||||
"repo": "rust-overlay",
|
"repo": "rust-overlay",
|
||||||
"rev": "09f2869b164f8b6d5e30f0bd7ed30d6eb8237058",
|
"rev": "cf960a1938ee91200fe0d2f7b2582fde2429d562",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -2406,11 +2390,11 @@
|
||||||
"snowfall-lib": "snowfall-lib_2"
|
"snowfall-lib": "snowfall-lib_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736321133,
|
"lastModified": 1736760170,
|
||||||
"narHash": "sha256-WcMlGvUYUEUCxtrG3DHExdnvAHKuJazi9FLhAiqOorw=",
|
"narHash": "sha256-GvMN9vsy59xitBKt0Qh/grANYi0AWHXokrr6FY4JXRM=",
|
||||||
"owner": "Svenum",
|
"owner": "Svenum",
|
||||||
"repo": "Solaar-Flake",
|
"repo": "Solaar-Flake",
|
||||||
"rev": "808a089a32a2c0f436f106fc554215c4930b3c69",
|
"rev": "255c70259546c7201141e7903cd94b0507c6377e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -2428,11 +2412,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736568948,
|
"lastModified": 1736741830,
|
||||||
"narHash": "sha256-nnaMeMQPDg1GLQPBejn4nBtvQKSRVv64IIPZ7XmX5u0=",
|
"narHash": "sha256-7cXbJ3t/gvuHTI1uJ8juBK1NmSs4tRSGsb0MtCGo70o=",
|
||||||
"owner": "Gerg-L",
|
"owner": "Gerg-L",
|
||||||
"repo": "spicetify-nix",
|
"repo": "spicetify-nix",
|
||||||
"rev": "3da50a44c6c47b3361e56231123797101892c565",
|
"rev": "e1a0822469d975d25de4953860a15662fe5d6595",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -2837,11 +2821,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736498040,
|
"lastModified": 1736677965,
|
||||||
"narHash": "sha256-fen7o+m7nVlRc1YEhxdWXZTZvcTYEy078nrccTulb7w=",
|
"narHash": "sha256-vj4NpvjjW5cUBYJc9AUbH8D8LIkoSwQyKJ+02tHKAAU=",
|
||||||
"owner": "Alexays",
|
"owner": "Alexays",
|
||||||
"repo": "Waybar",
|
"repo": "Waybar",
|
||||||
"rev": "369c81d6f29e46287a961e8ef26dbf349021d4fb",
|
"rev": "a4241d700823cbee9e717c90a8408e2dfc977b45",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -2896,11 +2880,11 @@
|
||||||
"nixpkgs": "nixpkgs_17"
|
"nixpkgs": "nixpkgs_17"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736565714,
|
"lastModified": 1736742126,
|
||||||
"narHash": "sha256-/OyRMWPzV7027/Zvi5Kwb7D8UM0mhRLqPkC0WRHre2I=",
|
"narHash": "sha256-vncZtYaV+MKOZrDJW/OkvtXEu2a5bYvgO6ldN6s+1To=",
|
||||||
"owner": "0xc000022070",
|
"owner": "0xc000022070",
|
||||||
"repo": "zen-browser-flake",
|
"repo": "zen-browser-flake",
|
||||||
"rev": "48a7f03cdc23ca81c668d0f09ea4ab2278f61162",
|
"rev": "ee8352faad5be12f7088431b979fa36088be65c4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
||||||
|
|
@ -118,10 +118,6 @@
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
impermanence = {
|
|
||||||
url = "github:nix-community/impermanence";
|
|
||||||
};
|
|
||||||
|
|
||||||
g2claude.url = "git+https://git.zoeys.cloud/zoey/g2claude.git";
|
g2claude.url = "git+https://git.zoeys.cloud/zoey/g2claude.git";
|
||||||
|
|
||||||
rust-overlay = {
|
rust-overlay = {
|
||||||
|
|
@ -155,7 +151,6 @@
|
||||||
catppuccin.homeManagerModules.catppuccin
|
catppuccin.homeManagerModules.catppuccin
|
||||||
anyrun.homeManagerModules.default
|
anyrun.homeManagerModules.default
|
||||||
ags.homeManagerModules.default
|
ags.homeManagerModules.default
|
||||||
impermanence.nixosModules.home-manager.impermanence
|
|
||||||
];
|
];
|
||||||
|
|
||||||
systems.modules.nixos = with inputs; [
|
systems.modules.nixos = with inputs; [
|
||||||
|
|
@ -168,7 +163,6 @@
|
||||||
zoeycomputer.nixosModules.default
|
zoeycomputer.nixosModules.default
|
||||||
lix-module.nixosModules.default
|
lix-module.nixosModules.default
|
||||||
disko.nixosModules.default
|
disko.nixosModules.default
|
||||||
impermanence.nixosModules.impermanence
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
|
|
|
||||||
|
|
@ -60,11 +60,11 @@
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
defaultApplications = {
|
defaultApplications = {
|
||||||
"text/html" = "zen_twilight.desktop";
|
"text/html" = "zen_beta.desktop";
|
||||||
"x-scheme-handler/http" = "zen_twilight.desktop";
|
"x-scheme-handler/http" = "zen_beta.desktop";
|
||||||
"x-scheme-handler/https" = "zen_twilight.desktop";
|
"x-scheme-handler/https" = "zen_beta.desktop";
|
||||||
"x-scheme-handler/about" = "zen_twilight.desktop";
|
"x-scheme-handler/about" = "zen_beta.desktop";
|
||||||
"x-scheme-handler/unknown" = "zen_twilight.desktop";
|
"x-scheme-handler/unknown" = "zen_beta.desktop";
|
||||||
|
|
||||||
"inode/directory" = ["org.gnome.Nautilus.desktop"];
|
"inode/directory" = ["org.gnome.Nautilus.desktop"];
|
||||||
|
|
||||||
|
|
@ -118,6 +118,7 @@
|
||||||
pkgs.custom.enc
|
pkgs.custom.enc
|
||||||
|
|
||||||
pkgs.nix-tree
|
pkgs.nix-tree
|
||||||
|
inputs.g2claude.packages.${pkgs.system}.default
|
||||||
|
|
||||||
pkgs.mongodb-compass
|
pkgs.mongodb-compass
|
||||||
pkgs.postman
|
pkgs.postman
|
||||||
|
|
@ -174,6 +175,9 @@
|
||||||
options = ["--cmd cd"];
|
options = ["--cmd cd"];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
catppuccin.helix.enable = true;
|
||||||
|
programs.helix.enable = true;
|
||||||
|
|
||||||
programs.cava = {
|
programs.cava = {
|
||||||
enable = true;
|
enable = true;
|
||||||
catppuccin.enable = true;
|
catppuccin.enable = true;
|
||||||
|
|
@ -190,7 +194,6 @@
|
||||||
|
|
||||||
programs.lazygit = {
|
programs.lazygit = {
|
||||||
enable = true;
|
enable = true;
|
||||||
catppuccin.enable = true;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.fzf = {
|
programs.fzf = {
|
||||||
|
|
|
||||||
|
|
@ -18,8 +18,8 @@ in {
|
||||||
package = pkgs.rofi;
|
package = pkgs.rofi;
|
||||||
|
|
||||||
# Basic configuration
|
# Basic configuration
|
||||||
terminal = "ghostty";
|
terminal = "kitty";
|
||||||
font = "Lexend Medium 16px";
|
font = "Cantarell";
|
||||||
|
|
||||||
extraConfig = {
|
extraConfig = {
|
||||||
modi = "drun";
|
modi = "drun";
|
||||||
|
|
@ -138,7 +138,7 @@ in {
|
||||||
cursor = mkLiteral "inherit";
|
cursor = mkLiteral "inherit";
|
||||||
"vertical-align" = mkLiteral "0.5";
|
"vertical-align" = mkLiteral "0.5";
|
||||||
"horizontal-align" = mkLiteral "0.0";
|
"horizontal-align" = mkLiteral "0.0";
|
||||||
font = mkLiteral ''"Lexend Medium 16px"'';
|
font = mkLiteral ''"Cantarell 16px"'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -58,6 +58,10 @@ in {
|
||||||
|
|
||||||
bindkey "^[[1;5C" forward-word
|
bindkey "^[[1;5C" forward-word
|
||||||
bindkey "^[[1;5D" backward-word
|
bindkey "^[[1;5D" backward-word
|
||||||
|
|
||||||
|
if command -v tmux &> /dev/null && [ -z "$TMUX" ]; then
|
||||||
|
tmux attach-session -t default || tmux new-session -s default
|
||||||
|
fi
|
||||||
'';
|
'';
|
||||||
|
|
||||||
# oh my zsh
|
# oh my zsh
|
||||||
|
|
|
||||||
202
modules/nixos/hardware/gpu-passthru/default.nix
Normal file
202
modules/nixos/hardware/gpu-passthru/default.nix
Normal file
|
|
@ -0,0 +1,202 @@
|
||||||
|
{
|
||||||
|
inputs,
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
with lib;
|
||||||
|
with lib.custom; let
|
||||||
|
cfg = config.hardware.gpu-passthru;
|
||||||
|
in {
|
||||||
|
options.hardware.gpu-passthru = with types; {
|
||||||
|
enable = mkBoolOpt false "Enable support for single gpu-passthru";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
boot.kernelParams = ["intel_iommu=on" "iommu=pt"];
|
||||||
|
boot.kernelModules = ["vfio-pci"];
|
||||||
|
|
||||||
|
virtualisation.libvirtd = {
|
||||||
|
enable = true;
|
||||||
|
onBoot = "ignore";
|
||||||
|
onShutdown = "shutdown";
|
||||||
|
qemuOvmf = true;
|
||||||
|
qemuRunAsRoot = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.libvirtd = {
|
||||||
|
path = let
|
||||||
|
env = pkgs.buildEnv {
|
||||||
|
name = "qemu-hook-env";
|
||||||
|
paths = with pkgs; [
|
||||||
|
bash
|
||||||
|
libvirt
|
||||||
|
kmod
|
||||||
|
systemd
|
||||||
|
ripgrep
|
||||||
|
sd
|
||||||
|
];
|
||||||
|
};
|
||||||
|
in [env];
|
||||||
|
};
|
||||||
|
|
||||||
|
system.activationScripts.libvirt-hooks.text = ''
|
||||||
|
ln -Tfs /etc/libvirt/hooks /var/lib/libvirt/hooks
|
||||||
|
'';
|
||||||
|
|
||||||
|
# environment.systemPackages = with pkgs; [
|
||||||
|
# virt-manager
|
||||||
|
# gnome3.dconf
|
||||||
|
# libguestfs
|
||||||
|
# ];
|
||||||
|
|
||||||
|
environment.etc = {
|
||||||
|
"/libvirt/hooks/qemu" = {
|
||||||
|
text = ''
|
||||||
|
#!/run/current-system/sw/bin/bash
|
||||||
|
#
|
||||||
|
# Author: Sebastiaan Meijer (sebastiaan@passthroughpo.st)
|
||||||
|
#
|
||||||
|
# Copy this file to /etc/libvirt/hooks, make sure it's called "qemu".
|
||||||
|
# After this file is installed, restart libvirt.
|
||||||
|
# From now on, you can easily add per-guest qemu hooks.
|
||||||
|
# Add your hooks in /etc/libvirt/hooks/qemu.d/vm_name/hook_name/state_name.
|
||||||
|
# For a list of available hooks, please refer to https://www.libvirt.org/hooks.html
|
||||||
|
#
|
||||||
|
|
||||||
|
GUEST_NAME="$1"
|
||||||
|
HOOK_NAME="$2"
|
||||||
|
STATE_NAME="$3"
|
||||||
|
MISC="''${@:4}"
|
||||||
|
|
||||||
|
BASEDIR="$(dirname $0)"
|
||||||
|
|
||||||
|
HOOKPATH="$BASEDIR/qemu.d/$GUEST_NAME/$HOOK_NAME/$STATE_NAME"
|
||||||
|
|
||||||
|
set -e # If a script exits with an error, we should as well.
|
||||||
|
|
||||||
|
# check if it's a non-empty executable file
|
||||||
|
if [ -f "$HOOKPATH" ] && [ -s "$HOOKPATH"] && [ -x "$HOOKPATH" ]; then
|
||||||
|
eval \"$HOOKPATH\" "$@"
|
||||||
|
elif [ -d "$HOOKPATH" ]; then
|
||||||
|
while read file; do
|
||||||
|
# check for null string
|
||||||
|
if [ ! -z "$file" ]; then
|
||||||
|
eval \"$file\" "$@"
|
||||||
|
fi
|
||||||
|
done <<< "$(find -L "$HOOKPATH" -maxdepth 1 -type f -executable -print;)"
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
mode = "0755";
|
||||||
|
};
|
||||||
|
|
||||||
|
"libvirt/hooks/kvm.conf" = {
|
||||||
|
text = ''
|
||||||
|
VIRSH_GPU_VIDEO=pci_0000_0B_00_0
|
||||||
|
VIRSH_GPU_AUDIO=pci_0000_0B_00_1
|
||||||
|
'';
|
||||||
|
mode = "0755";
|
||||||
|
};
|
||||||
|
|
||||||
|
"libvirt/hooks/qemu.d/win10/prepare/begin/start.sh" = {
|
||||||
|
text = ''
|
||||||
|
#!/run/current-system/sw/bin/bash
|
||||||
|
|
||||||
|
# Debugging
|
||||||
|
exec 19>/home/zoey/Desktop/startlogfile
|
||||||
|
BASH_XTRACEFD=19
|
||||||
|
set -x
|
||||||
|
|
||||||
|
# Load variables we defined
|
||||||
|
source "/etc/libvirt/hooks/kvm.conf"
|
||||||
|
|
||||||
|
# Change to performance governor
|
||||||
|
echo performance | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
|
||||||
|
|
||||||
|
# Isolate host to core 0
|
||||||
|
systemctl set-property --runtime -- user.slice AllowedCPUs=0-6
|
||||||
|
systemctl set-property --runtime -- system.slice AllowedCPUs=0-6
|
||||||
|
systemctl set-property --runtime -- init.scope AllowedCPUs=0-6
|
||||||
|
|
||||||
|
# Logout
|
||||||
|
# source "/home/owner/Desktop/Sync/Files/Tools/logout.sh"
|
||||||
|
|
||||||
|
# Stop display manager
|
||||||
|
systemctl stop display-manager.service
|
||||||
|
killall gdm-wayland-session
|
||||||
|
|
||||||
|
# Unbind VTconsoles
|
||||||
|
echo 0 > /sys/class/vtconsole/vtcon0/bind
|
||||||
|
echo 0 > /sys/class/vtconsole/vtcon1/bind
|
||||||
|
|
||||||
|
# Unbind EFI Framebuffer
|
||||||
|
echo efi-framebuffer.0 > /sys/bus/platform/drivers/efi-framebuffer/unbind
|
||||||
|
|
||||||
|
# Avoid race condition
|
||||||
|
sleep 5
|
||||||
|
|
||||||
|
# Unload NVIDIA kernel modules
|
||||||
|
modprobe -r nvidia_drm nvidia_modeset nvidia_uvm nvidia
|
||||||
|
|
||||||
|
# Detach GPU devices from host
|
||||||
|
virsh nodedev-detach $VIRSH_GPU_VIDEO
|
||||||
|
virsh nodedev-detach $VIRSH_GPU_AUDIO
|
||||||
|
|
||||||
|
# Load vfio module
|
||||||
|
modprobe vfio-pci
|
||||||
|
'';
|
||||||
|
mode = "0755";
|
||||||
|
};
|
||||||
|
|
||||||
|
"libvirt/hooks/qemu.d/win10/release/end/stop.sh" = {
|
||||||
|
text = ''
|
||||||
|
#!/run/current-system/sw/bin/bash
|
||||||
|
|
||||||
|
# Debugging
|
||||||
|
exec 19>/home/zoey/Desktop/stoplogfile
|
||||||
|
BASH_XTRACEFD=19
|
||||||
|
set -x
|
||||||
|
|
||||||
|
# Load variables we defined
|
||||||
|
source "/etc/libvirt/hooks/kvm.conf"
|
||||||
|
|
||||||
|
# Unload vfio module
|
||||||
|
modprobe -r vfio-pci
|
||||||
|
|
||||||
|
# Attach GPU devices from host
|
||||||
|
virsh nodedev-reattach $VIRSH_GPU_VIDEO
|
||||||
|
virsh nodedev-reattach $VIRSH_GPU_AUDIO
|
||||||
|
|
||||||
|
# Read nvidia x config
|
||||||
|
nvidia-xconfig --query-gpu-info > /dev/null 2>&1
|
||||||
|
|
||||||
|
# Load NVIDIA kernel modules
|
||||||
|
modprobe nvidia_drm nvidia_modeset nvidia_uvm nvidia
|
||||||
|
|
||||||
|
# Avoid race condition
|
||||||
|
sleep 5
|
||||||
|
|
||||||
|
# Bind EFI Framebuffer
|
||||||
|
echo efi-framebuffer.0 > /sys/bus/platform/drivers/efi-framebuffer/bind
|
||||||
|
|
||||||
|
# Bind VTconsoles
|
||||||
|
echo 1 > /sys/class/vtconsole/vtcon0/bind
|
||||||
|
echo 1 > /sys/class/vtconsole/vtcon1/bind
|
||||||
|
|
||||||
|
# Start display manager
|
||||||
|
systemctl start display-manager.service
|
||||||
|
|
||||||
|
# Return host to all cores
|
||||||
|
systemctl set-property --runtime -- user.slice AllowedCPUs=0-31
|
||||||
|
systemctl set-property --runtime -- system.slice AllowedCPUs=0-31
|
||||||
|
systemctl set-property --runtime -- init.scope AllowedCPUs=0-31
|
||||||
|
|
||||||
|
# Change to powersave governor
|
||||||
|
echo powersave | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
|
||||||
|
'';
|
||||||
|
mode = "0755";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -6,10 +6,8 @@
|
||||||
}:
|
}:
|
||||||
writeShellScriptBin "sc" ''
|
writeShellScriptBin "sc" ''
|
||||||
|
|
||||||
# Take a screenshot with grim and slurp
|
|
||||||
${lib.getExe pkgs.grim} -g "$(${lib.getExe pkgs.slurp})" /tmp/screenshot.png
|
${lib.getExe pkgs.grim} -g "$(${lib.getExe pkgs.slurp})" /tmp/screenshot.png
|
||||||
|
|
||||||
# Upload the screenshot and store the response
|
|
||||||
response=$(${lib.getExe pkgs.curl} -s \
|
response=$(${lib.getExe pkgs.curl} -s \
|
||||||
-X POST \
|
-X POST \
|
||||||
-H "Accept: application/json" \
|
-H "Accept: application/json" \
|
||||||
|
|
@ -17,12 +15,9 @@ writeShellScriptBin "sc" ''
|
||||||
-F "file=@/tmp/screenshot.png" \
|
-F "file=@/tmp/screenshot.png" \
|
||||||
https://zoeys.computer/api/images/create)
|
https://zoeys.computer/api/images/create)
|
||||||
|
|
||||||
# Extract the URL using jq and copy to clipboard
|
|
||||||
echo "$response" | ${lib.getExe pkgs.jq} -r '.url' | ${pkgs.wl-clipboard}/bin/wl-copy
|
echo "$response" | ${lib.getExe pkgs.jq} -r '.url' | ${pkgs.wl-clipboard}/bin/wl-copy
|
||||||
|
|
||||||
# Clean up the temporary file
|
|
||||||
rm /tmp/screenshot.png
|
rm /tmp/screenshot.png
|
||||||
|
|
||||||
# Notify user
|
|
||||||
echo "Screenshot uploaded and URL copied to clipboard!"
|
echo "Screenshot uploaded and URL copied to clipboard!"
|
||||||
''
|
''
|
||||||
|
|
|
||||||
|
|
@ -187,7 +187,7 @@
|
||||||
dockerCompat = true;
|
dockerCompat = true;
|
||||||
defaultNetwork.settings.dns_enabled = true;
|
defaultNetwork.settings.dns_enabled = true;
|
||||||
};
|
};
|
||||||
virtualisation.libvirtd.enable = true;
|
hardware.gpu-passthru.enable = true;
|
||||||
|
|
||||||
system.stateVersion = "24.05";
|
system.stateVersion = "24.05";
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue