mirror of
https://github.com/Theaninova/TheaninovOS.git
synced 2025-12-11 02:56:27 +00:00
update system
This commit is contained in:
56
flake.lock
generated
56
flake.lock
generated
@@ -8,11 +8,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1753121425,
|
"lastModified": 1756770412,
|
||||||
"narHash": "sha256-TVcTNvOeWWk1DXljFxVRp+E0tzG1LhrVjOGGoMHuXio=",
|
"narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "644e0fc48951a860279da645ba77fe4a6e814c5e",
|
"rev": "4524271976b625a4a605beefd893f270620fd751",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -79,11 +79,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1753848447,
|
"lastModified": 1757809953,
|
||||||
"narHash": "sha256-fsld/crW9XRodFUG1GK8Lt0ERv6ARl9Wj3Xb0x96J4w=",
|
"narHash": "sha256-29mlXbfAJhz9cWVrPP4STvVPDVZFCfCOmaIN5lFJa+Y=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "d732b648e5a7e3b89439ee25895e4eb24b7e5452",
|
"rev": "17a10049486f6698fca32097d8f52c0c895542b0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -106,16 +106,16 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1748294338,
|
"lastModified": 1754860581,
|
||||||
"narHash": "sha256-FVO01jdmUNArzBS7NmaktLdGA5qA3lUMJ4B7a05Iynw=",
|
"narHash": "sha256-EM0IE63OHxXCOpDHXaTyHIOk2cNvMCGPqLt/IdtVxgk=",
|
||||||
"owner": "NuschtOS",
|
"owner": "NuschtOS",
|
||||||
"repo": "ixx",
|
"repo": "ixx",
|
||||||
"rev": "cc5f390f7caf265461d4aab37e98d2292ebbdb85",
|
"rev": "babfe85a876162c4acc9ab6fb4483df88fa1f281",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NuschtOS",
|
"owner": "NuschtOS",
|
||||||
"ref": "v0.0.8",
|
"ref": "v0.1.1",
|
||||||
"repo": "ixx",
|
"repo": "ixx",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
@@ -123,11 +123,11 @@
|
|||||||
"lix": {
|
"lix": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1753223229,
|
"lastModified": 1753306924,
|
||||||
"narHash": "sha256-tkT4aCZZE6IEmjYotOzKKa2rV3pGpH3ZREeQn7ACgdU=",
|
"narHash": "sha256-jLCEW0FvjFhC+c4RHzH+xbkSOxrnpFHnhjOw6sudhx0=",
|
||||||
"rev": "7ac20fc47cf2f1b7469c7a2f379e5a3a51a6789a",
|
"rev": "1a4393d0aac31aba21f5737ede1b171e11336d77",
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
"url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/7ac20fc47cf2f1b7469c7a2f379e5a3a51a6789a.tar.gz?rev=7ac20fc47cf2f1b7469c7a2f379e5a3a51a6789a"
|
"url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/1a4393d0aac31aba21f5737ede1b171e11336d77.tar.gz?rev=1a4393d0aac31aba21f5737ede1b171e11336d77"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
@@ -144,15 +144,15 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1753282722,
|
"lastModified": 1756125859,
|
||||||
"narHash": "sha256-KYMUrTV7H/RR5/HRnjV5R3rRIuBXMemyJzTLi50NFTs=",
|
"narHash": "sha256-6a+PWILmqHCs9B5eIBLg6HSZ8jYweZpgOWO8FlyVwYI=",
|
||||||
"rev": "46a9e8fcfe4be72b4c7c8082ee11d2c42da1e873",
|
"rev": "d3292125035b04df00d01549a26e948631fabe1e",
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
"url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/46a9e8fcfe4be72b4c7c8082ee11d2c42da1e873.tar.gz?rev=46a9e8fcfe4be72b4c7c8082ee11d2c42da1e873"
|
"url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/d3292125035b04df00d01549a26e948631fabe1e.tar.gz?rev=d3292125035b04df00d01549a26e948631fabe1e"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
"url": "https://git.lix.systems/lix-project/nixos-module/archive/2.93.3-1.tar.gz"
|
"url": "https://git.lix.systems/lix-project/nixos-module/archive/2.93.3-2.tar.gz"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"matugen": {
|
"matugen": {
|
||||||
@@ -195,11 +195,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1753694789,
|
"lastModified": 1757745802,
|
||||||
"narHash": "sha256-cKgvtz6fKuK1Xr5LQW/zOUiAC0oSQoA9nOISB0pJZqM=",
|
"narHash": "sha256-hLEO2TPj55KcUFUU1vgtHE9UEIOjRcH/4QbmfHNF820=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "dc9637876d0dcc8c9e5e22986b857632effeb727",
|
"rev": "c23193b943c6c689d70ee98ce3128239ed9e32d1",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -219,11 +219,11 @@
|
|||||||
"systems": "systems_4"
|
"systems": "systems_4"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1753805595,
|
"lastModified": 1757864383,
|
||||||
"narHash": "sha256-5m0FqObrj/0/nfoaKlgpye4+SZzj1nMPnlxGxlIxKNg=",
|
"narHash": "sha256-oMoFAEC8A8BGBHIYiUNsgsVhEyNwTbn066J68LtbelY=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixvim",
|
"repo": "nixvim",
|
||||||
"rev": "fe0bcc92c8c593d5e2b45ffb0d1253c3aa55eb72",
|
"rev": "db1a991f33fb43cf0e2a4aff54a8c53b4dc12128",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -242,11 +242,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1753450833,
|
"lastModified": 1757624466,
|
||||||
"narHash": "sha256-Pmpke0JtLRzgdlwDC5a+aiLVZ11JPUO5Bcqkj0nHE/k=",
|
"narHash": "sha256-25ExS2AkQD05Jf0Y2Wnn5KHpucN2d3ObEQOVaDh7ubg=",
|
||||||
"owner": "NuschtOS",
|
"owner": "NuschtOS",
|
||||||
"repo": "search",
|
"repo": "search",
|
||||||
"rev": "40987cc1a24feba378438d691f87c52819f7bd75",
|
"rev": "da8bcb74407e41d334fc79081fdd8948b795bd6f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
82
flake.nix
82
flake.nix
@@ -2,7 +2,7 @@
|
|||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
lix-module = {
|
lix-module = {
|
||||||
url = "https://git.lix.systems/lix-project/nixos-module/archive/2.93.3-1.tar.gz";
|
url = "https://git.lix.systems/lix-project/nixos-module/archive/2.93.3-2.tar.gz";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
home-manager = {
|
home-manager = {
|
||||||
@@ -33,54 +33,57 @@
|
|||||||
let
|
let
|
||||||
inherit (nixpkgs.lib) genAttrs;
|
inherit (nixpkgs.lib) genAttrs;
|
||||||
eachSystem = genAttrs [ "x86_64-linux" ];
|
eachSystem = genAttrs [ "x86_64-linux" ];
|
||||||
legacyPackages = eachSystem (
|
legacyPackages =
|
||||||
system:
|
config:
|
||||||
import nixpkgs {
|
(eachSystem (
|
||||||
inherit system;
|
system:
|
||||||
config = {
|
import nixpkgs {
|
||||||
allowUnfree = true;
|
inherit system;
|
||||||
allowUnsupportedSystem = true;
|
config = config // {
|
||||||
experimental-features = "nix-command flakes";
|
allowUnfree = true;
|
||||||
};
|
allowUnsupportedSystem = true;
|
||||||
overlays = [
|
experimental-features = "nix-command flakes";
|
||||||
(final: prev: {
|
};
|
||||||
matugen = matugen.packages.${prev.system}.default;
|
overlays = [
|
||||||
gccdiag = prev.callPackage ./overlays/gccdiag { };
|
(final: prev: {
|
||||||
gbmonctl = prev.callPackage ./overlays/gbmonctl { };
|
matugen = matugen.packages.${prev.system}.default;
|
||||||
lpc21isp = prev.callPackage ./overlays/lpc21isp { };
|
gccdiag = prev.callPackage ./overlays/gccdiag { };
|
||||||
rquickshare = prev.callPackage ./overlays/rquickshare { };
|
gbmonctl = prev.callPackage ./overlays/gbmonctl { };
|
||||||
rastertokpsl-re = prev.callPackage ./overlays/rastertokpsl-re { };
|
lpc21isp = prev.callPackage ./overlays/lpc21isp { };
|
||||||
usb-sniffer = prev.callPackage ./overlays/usb-sniffer { };
|
rquickshare = prev.callPackage ./overlays/rquickshare { };
|
||||||
wireshark = prev.wireshark.overrideAttrs (
|
rastertokpsl-re = prev.callPackage ./overlays/rastertokpsl-re { };
|
||||||
finalAttrs: prevAttrs: {
|
usb-sniffer = prev.callPackage ./overlays/usb-sniffer { };
|
||||||
postInstall = prevAttrs.postInstall + ''
|
wireshark = prev.wireshark.overrideAttrs (
|
||||||
ln -s ${final.usb-sniffer}/bin/usb_sniffer $out/lib/wireshark/extcap/usb_sniffer
|
finalAttrs: prevAttrs: {
|
||||||
'';
|
postInstall = prevAttrs.postInstall + ''
|
||||||
}
|
ln -s ${final.usb-sniffer}/bin/usb_sniffer $out/lib/wireshark/extcap/usb_sniffer
|
||||||
);
|
'';
|
||||||
plymouth = prev.plymouth.overrideAttrs (
|
}
|
||||||
final: prev: {
|
);
|
||||||
patches = prev.patches ++ [ ./overlays/plymouth/drm-close-fb.patch ];
|
plymouth = prev.plymouth.overrideAttrs (
|
||||||
}
|
final: prev: {
|
||||||
);
|
patches = prev.patches ++ [ ./overlays/plymouth/drm-close-fb.patch ];
|
||||||
})
|
}
|
||||||
];
|
);
|
||||||
}
|
})
|
||||||
);
|
];
|
||||||
|
}
|
||||||
|
));
|
||||||
|
|
||||||
mkHost =
|
mkHost =
|
||||||
{
|
{
|
||||||
hostname,
|
hostname,
|
||||||
username,
|
username,
|
||||||
system,
|
system,
|
||||||
|
config ? { },
|
||||||
}:
|
}:
|
||||||
nixpkgs.lib.nixosSystem rec {
|
nixpkgs.lib.nixosSystem rec {
|
||||||
pkgs = legacyPackages.${system};
|
pkgs = (legacyPackages config).${system};
|
||||||
modules = [
|
modules = [
|
||||||
./modules/nixos
|
./modules/nixos
|
||||||
./hosts/${hostname}
|
./hosts/${hostname}
|
||||||
home-manager.nixosModules.home-manager
|
home-manager.nixosModules.home-manager
|
||||||
lix-module.nixosModules.default
|
# lix-module.nixosModules.default
|
||||||
nix-flatpak.nixosModules.nix-flatpak
|
nix-flatpak.nixosModules.nix-flatpak
|
||||||
{
|
{
|
||||||
_module.args =
|
_module.args =
|
||||||
@@ -127,7 +130,7 @@
|
|||||||
sharedModules = [
|
sharedModules = [
|
||||||
matugen.homeManagerModules.default
|
matugen.homeManagerModules.default
|
||||||
nix-flatpak.homeManagerModules.nix-flatpak
|
nix-flatpak.homeManagerModules.nix-flatpak
|
||||||
nixvim.homeManagerModules.nixvim
|
nixvim.homeModules.nixvim
|
||||||
./modules/home-manager/modules/nixvim
|
./modules/home-manager/modules/nixvim
|
||||||
];
|
];
|
||||||
users.${username} = {
|
users.${username} = {
|
||||||
@@ -153,6 +156,9 @@
|
|||||||
hostname = "MONSTER";
|
hostname = "MONSTER";
|
||||||
username = "theaninova";
|
username = "theaninova";
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
|
config = {
|
||||||
|
rocmSupport = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
aero = mkHost {
|
aero = mkHost {
|
||||||
hostname = "aero";
|
hostname = "aero";
|
||||||
|
|||||||
@@ -48,11 +48,20 @@
|
|||||||
};
|
};
|
||||||
locale.preset.theaninova.enable = true;
|
locale.preset.theaninova.enable = true;
|
||||||
|
|
||||||
|
networking.hosts = {
|
||||||
|
"127.0.0.1:57461" = [ "ai.local" ];
|
||||||
|
};
|
||||||
services = {
|
services = {
|
||||||
ollama = {
|
ollama.enable = true;
|
||||||
|
open-webui = {
|
||||||
enable = true;
|
enable = true;
|
||||||
acceleration = "rocm";
|
port = 57461;
|
||||||
rocmOverrideGfx = "10.3.0";
|
environment = {
|
||||||
|
ANONYMIZED_TELEMETRY = "False";
|
||||||
|
DO_NOT_TRACK = "True";
|
||||||
|
SCARF_NO_ANALYTICS = "True";
|
||||||
|
WEBUI_AUTH = "False";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
xserver.xkb.variant = "altgr-intl";
|
xserver.xkb.variant = "altgr-intl";
|
||||||
@@ -73,7 +82,7 @@
|
|||||||
fv43u.enable = true;
|
fv43u.enable = true;
|
||||||
astro-a50.enable = true;
|
astro-a50.enable = true;
|
||||||
# virtual-camera.enable = true;
|
# virtual-camera.enable = true;
|
||||||
hid-fanatecff.enable = true;
|
# hid-fanatecff.enable = true;
|
||||||
|
|
||||||
enableAllFirmware = true;
|
enableAllFirmware = true;
|
||||||
bluetooth = {
|
bluetooth = {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ ... }:
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
theme.md3-evo = {
|
theme.md3-evo = {
|
||||||
enable = true;
|
enable = true;
|
||||||
@@ -9,4 +9,44 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
programs.zoxide.enable = true;
|
programs.zoxide.enable = true;
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
hyperhdr
|
||||||
|
/*
|
||||||
|
(hyperion-ng.overrideAttrs (
|
||||||
|
final: prev: rec {
|
||||||
|
version = "2.1.1";
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "hyperion-project";
|
||||||
|
repo = prev.pname;
|
||||||
|
rev = version;
|
||||||
|
hash = "sha256-lKLXgOrXp8DLmlpQe/33A30l4K9VX8P0q2LUA+lLYws=";
|
||||||
|
# needed for `dependencies/external/`:
|
||||||
|
# * rpi_ws281x` - not possible to use as a "system" lib
|
||||||
|
# * qmdnsengine - not in nixpkgs yet
|
||||||
|
fetchSubmodules = true;
|
||||||
|
};
|
||||||
|
buildInputs = prev.buildInputs ++ [
|
||||||
|
pkgs.libsForQt5.qtwebsockets
|
||||||
|
pkgs.libftdi1
|
||||||
|
];
|
||||||
|
nativeBuildInputs = prev.nativeBuildInputs ++ [ pkgs.git ];
|
||||||
|
cmakeFlags = prev.cmakeFlags ++ [
|
||||||
|
"-DUSE_SYSTEM_LIBFTDI_LIBS=ON"
|
||||||
|
];
|
||||||
|
}
|
||||||
|
))
|
||||||
|
*/
|
||||||
|
];
|
||||||
|
wayland.windowManager.hyprland.settings.device =
|
||||||
|
let
|
||||||
|
targetDPI = 1200;
|
||||||
|
actualDPI = 3200;
|
||||||
|
in
|
||||||
|
[
|
||||||
|
{
|
||||||
|
name = "endgame-gear-endgame-gear-op1-8k-v2-gaming-mouse";
|
||||||
|
sensitivity = builtins.toString (((targetDPI + 0.0) / actualDPI) - 1);
|
||||||
|
accel_profile = "flat";
|
||||||
|
}
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -101,6 +101,28 @@
|
|||||||
security.tpm2.enable = true;
|
security.tpm2.enable = true;
|
||||||
users.defaultUserShell = pkgs.zsh;
|
users.defaultUserShell = pkgs.zsh;
|
||||||
|
|
||||||
|
networking.hosts = {
|
||||||
|
"127.0.0.1:57461" = [ "ai.local" ];
|
||||||
|
};
|
||||||
|
services.ollama = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.ollama.override {
|
||||||
|
config.cudaSupport = true;
|
||||||
|
config.rocmSupport = false;
|
||||||
|
};
|
||||||
|
acceleration = "cuda";
|
||||||
|
};
|
||||||
|
services.open-webui = {
|
||||||
|
enable = true;
|
||||||
|
port = 57461;
|
||||||
|
environment = {
|
||||||
|
ANONYMIZED_TELEMETRY = "False";
|
||||||
|
DO_NOT_TRACK = "True";
|
||||||
|
SCARF_NO_ANALYTICS = "True";
|
||||||
|
WEBUI_AUTH = "False";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
services.openssh = {
|
services.openssh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
|
|||||||
@@ -13,6 +13,7 @@
|
|||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
blueman
|
blueman
|
||||||
kdePackages.okular
|
kdePackages.okular
|
||||||
|
bitbox
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
systemd.user.services = {
|
systemd.user.services = {
|
||||||
|
|||||||
@@ -59,8 +59,8 @@ in
|
|||||||
disable_splash_rendering = true;
|
disable_splash_rendering = true;
|
||||||
vrr = lib.mkDefault 2;
|
vrr = lib.mkDefault 2;
|
||||||
};
|
};
|
||||||
|
decoration.border_part_of_window = false;
|
||||||
input.touchpad.natural_scroll = true;
|
input.touchpad.natural_scroll = true;
|
||||||
gestures.workspace_swipe = true;
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ in
|
|||||||
luasnip.enable = true;
|
luasnip.enable = true;
|
||||||
lspkind = {
|
lspkind = {
|
||||||
enable = true;
|
enable = true;
|
||||||
mode = "symbol_text";
|
settings.mode = "symbol_text";
|
||||||
};
|
};
|
||||||
lualine.settings.sections.lualine_x = lib.mkIf cfg.ollama (
|
lualine.settings.sections.lualine_x = lib.mkIf cfg.ollama (
|
||||||
lib.mkBefore [
|
lib.mkBefore [
|
||||||
|
|||||||
@@ -19,7 +19,6 @@
|
|||||||
chromium
|
chromium
|
||||||
|
|
||||||
# media
|
# media
|
||||||
jellyfin-media-player
|
|
||||||
yt-dlp
|
yt-dlp
|
||||||
f3d
|
f3d
|
||||||
mpv
|
mpv
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
general {
|
general {
|
||||||
col.inactive_border = rgba({{colors.surface.default.hex_stripped}}{{custom.transparency_hex | to_lower}})
|
col.inactive_border = 0x00000000
|
||||||
|
# col.inactive_border = rgba({{colors.surface.default.hex_stripped}}{{custom.transparency_hex | to_lower}})
|
||||||
col.active_border = rgb({{colors.primary.default.hex_stripped}})
|
col.active_border = rgb({{colors.primary.default.hex_stripped}})
|
||||||
border_size = 4
|
border_size = 4
|
||||||
extend_border_grab_area = 4
|
extend_border_grab_area = 4
|
||||||
|
|||||||
@@ -94,7 +94,7 @@ in
|
|||||||
user = username;
|
user = username;
|
||||||
};
|
};
|
||||||
default_session = {
|
default_session = {
|
||||||
command = "${lib.getExe pkgs.greetd.tuigreet} --asterisks --remember --user-menu --cmd 'uwsm start hyprland-uwsm.desktop'";
|
command = "${lib.getExe pkgs.tuigreet} --asterisks --remember --user-menu --cmd 'uwsm start hyprland-uwsm.desktop'";
|
||||||
user = username;
|
user = username;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user