Compare commits
No commits in common. "e49c1a659de6f01daa54620bc9fe493d49a4b3b1" and "f22dee69f0e034fee5cd4e3ff507366489916bb9" have entirely different histories.
e49c1a659d
...
f22dee69f0
13 changed files with 63 additions and 315 deletions
104
flake.lock
generated
104
flake.lock
generated
|
|
@ -20,11 +20,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1767024902,
|
"lastModified": 1765900596,
|
||||||
"narHash": "sha256-sMdk6QkMDhIOnvULXKUM8WW8iyi551SWw2i6KQHbrrU=",
|
"narHash": "sha256-+hn8v9jkkLP9m+o0Nm5SiEq10W0iWDSotH2XfjU45fA=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "aquamarine",
|
"repo": "aquamarine",
|
||||||
"rev": "b8a0c5ba5a9fbd2c660be7dd98bdde0ff3798556",
|
"rev": "d83c97f8f5c0aae553c1489c7d9eff3eadcadace",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -43,11 +43,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1768182537,
|
"lastModified": 1767198468,
|
||||||
"narHash": "sha256-1Ff3WJ57qPtX8D5srMKzXbsWD+bmC0sZzWIIRdAkmNo=",
|
"narHash": "sha256-FxDbqVgsT/ofpcVD4oNSO4YyPK0bu0/w4TGr/p87E4A=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "emacs-overlay",
|
"repo": "emacs-overlay",
|
||||||
"rev": "35a115b97a6dfc196cc479c676556ce3c874ee81",
|
"rev": "ff02fe1802aa90146fe3c236ec504c788825b152",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -59,15 +59,15 @@
|
||||||
"flake-compat": {
|
"flake-compat": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1767039857,
|
"lastModified": 1761588595,
|
||||||
"narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=",
|
"narHash": "sha256-XKUZz9zewJNUj46b4AJdiRZJAvSZ0Dqj2BNfXvFlJC4=",
|
||||||
"owner": "NixOS",
|
"owner": "edolstra",
|
||||||
"repo": "flake-compat",
|
"repo": "flake-compat",
|
||||||
"rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab",
|
"rev": "f387cd2afec9419c8ee37694406ca490c3f34ee5",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "edolstra",
|
||||||
"repo": "flake-compat",
|
"repo": "flake-compat",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
|
@ -122,11 +122,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1768068402,
|
"lastModified": 1767104570,
|
||||||
"narHash": "sha256-bAXnnJZKJiF7Xr6eNW6+PhBf1lg2P1aFUO9+xgWkXfA=",
|
"narHash": "sha256-GKgwu5//R+cLdKysZjGqvUEEOGXXLdt93sNXeb2M/Lk=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "8bc5473b6bc2b6e1529a9c4040411e1199c43b4c",
|
"rev": "e4e78a2cbeaddd07ab7238971b16468cc1d14daf",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -180,11 +180,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1766946335,
|
"lastModified": 1763733840,
|
||||||
"narHash": "sha256-MRD+Jr2bY11MzNDfenENhiK6pvN+nHygxdHoHbZ1HtE=",
|
"narHash": "sha256-JnET78yl5RvpGuDQy3rCycOCkiKoLr5DN1fPhRNNMco=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprgraphics",
|
"repo": "hyprgraphics",
|
||||||
"rev": "4af02a3925b454deb1c36603843da528b67ded6c",
|
"rev": "8f1bec691b2d198c60cccabca7a94add2df4ed1a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -218,11 +218,11 @@
|
||||||
"xdph": "xdph"
|
"xdph": "xdph"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1768144432,
|
"lastModified": 1767201430,
|
||||||
"narHash": "sha256-6fc6FyEmfwT1Ke+2ib/80XPshc1h2lapIB/HlsaxyP4=",
|
"narHash": "sha256-2FF66EaIbsc7CL1jKHbRFslSePDq40fzlTTbUlm5v3k=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "Hyprland",
|
"repo": "Hyprland",
|
||||||
"rev": "fbf421df889ceff3bac08a9f4b9493def5eecc4d",
|
"rev": "48a024e0322bbd7c4c88126498ec478444ec4cb2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -264,11 +264,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1767023960,
|
"lastModified": 1765643131,
|
||||||
"narHash": "sha256-R2HgtVS1G3KSIKAQ77aOZ+Q0HituOmPgXW9nBNkpp3Q=",
|
"narHash": "sha256-CCGohW5EBIRy4B7vTyBMqPgsNcaNenVad/wszfddET0=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprland-guiutils",
|
"repo": "hyprland-guiutils",
|
||||||
"rev": "c2e906261142f5dd1ee0bfc44abba23e2754c660",
|
"rev": "e50ae912813bdfa8372d62daf454f48d6df02297",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -284,11 +284,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1767957561,
|
"lastModified": 1766381032,
|
||||||
"narHash": "sha256-N0kFdc6tSE0yFeQ/Iit3KNrz4nf2K5xvP3juL7SUyhc=",
|
"narHash": "sha256-Wuk2MULnGfgAbP1N/Rp6H6k7zG/ynDiy54mPvkt/4bM=",
|
||||||
"owner": "outfoxxed",
|
"owner": "outfoxxed",
|
||||||
"repo": "hy3",
|
"repo": "hy3",
|
||||||
"rev": "3287049e79e9e51431de8c09f9192a18afa1bf35",
|
"rev": "50643d625829f303239f9ec019021f17d7e9f3fc",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -335,11 +335,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1767983607,
|
"lastModified": 1764612430,
|
||||||
"narHash": "sha256-8C2co8NYfR4oMOUEsPROOJ9JHrv9/ktbJJ6X1WsTbXc=",
|
"narHash": "sha256-54ltTSbI6W+qYGMchAgCR6QnC1kOdKXN6X6pJhOWxFg=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprlang",
|
"repo": "hyprlang",
|
||||||
"rev": "d4037379e6057246b408bbcf796cf3e9838af5b2",
|
"rev": "0d00dc118981531aa731150b6ea551ef037acddd",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -464,11 +464,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1767473322,
|
"lastModified": 1766253200,
|
||||||
"narHash": "sha256-RGOeG+wQHeJ6BKcsSB8r0ZU77g9mDvoQzoTKj2dFHwA=",
|
"narHash": "sha256-26qPwrd3od+xoYVywSB7hC2cz9ivN46VPLlrsXyGxvE=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprwire",
|
"repo": "hyprwire",
|
||||||
"rev": "d5e7d6b49fe780353c1cf9a1cf39fa8970bd9d11",
|
"rev": "1079777525b30a947c8d657fac158e00ae85de9d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -519,11 +519,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1767942797,
|
"lastModified": 1730724501,
|
||||||
"narHash": "sha256-ypny6yOP3Buh7UBmETW3R/el3nHdzYNOCMhVnCdm9U4=",
|
"narHash": "sha256-zvNdomPM86fUf0iAwJV1RQC8yAqDCKbCDJKIs4iIPy0=",
|
||||||
"ref": "refs/heads/master",
|
"ref": "refs/heads/master",
|
||||||
"rev": "8bdd6351a130f8ed8fe13c9ec87ed965c4d9912b",
|
"rev": "8f897ffb4a1575252c536c63db8be72f22b6a494",
|
||||||
"revCount": 2,
|
"revCount": 1,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://git.outfoxxed.me/outfoxxed/nix-qml-support"
|
"url": "https://git.outfoxxed.me/outfoxxed/nix-qml-support"
|
||||||
},
|
},
|
||||||
|
|
@ -534,11 +534,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1768127708,
|
"lastModified": 1766902085,
|
||||||
"narHash": "sha256-1Sm77VfZh3mU0F5OqKABNLWxOuDeHIlcFjsXeeiPazs=",
|
"narHash": "sha256-coBu0ONtFzlwwVBzmjacUQwj3G+lybcZ1oeNSQkgC0M=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "ffbc9f8cbaacfb331b6017d5a5abb21a492c9a38",
|
"rev": "c0b0e0fddf73fd517c3471e546c0df87a42d53f4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -555,11 +555,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1768203973,
|
"lastModified": 1767202981,
|
||||||
"narHash": "sha256-bf+HggwDgQRt47maAe9fbv2sH6uwZnzVy4tTb2nonP8=",
|
"narHash": "sha256-XF68CQaLfPcCk5DVAP/OLbyqchc9uj4E65AEf363HI8=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "NUR",
|
"repo": "NUR",
|
||||||
"rev": "7a7b3e1d25b93474d988915412e69c6f2401a0b7",
|
"rev": "8666a7d3d9d26a7a3031ba4d5688ba4e6f83d6bd",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -578,11 +578,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1767281941,
|
"lastModified": 1765911976,
|
||||||
"narHash": "sha256-6MkqajPICgugsuZ92OMoQcgSHnD6sJHwk8AxvMcIgTE=",
|
"narHash": "sha256-t3T/xm8zstHRLx+pIHxVpQTiySbKqcQbK+r+01XVKc0=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "git-hooks.nix",
|
"repo": "git-hooks.nix",
|
||||||
"rev": "f0927703b7b1c8d97511c4116eb9b4ec6645a0fa",
|
"rev": "b68b780b69702a090c8bb1b973bab13756cc7a27",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -598,11 +598,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1768204289,
|
"lastModified": 1766725085,
|
||||||
"narHash": "sha256-aXPr9W8AEmPz9+dH8CHIwrppKIjtS3mHyOXR2ppH/aw=",
|
"narHash": "sha256-O2aMFdDUYJazFrlwL7aSIHbUSEm3ADVZjmf41uBJfHs=",
|
||||||
"ref": "refs/heads/master",
|
"ref": "refs/heads/master",
|
||||||
"rev": "db37dc580afc9db1bc598436649c650138b6166d",
|
"rev": "41828c4180fb921df7992a5405f5ff05d2ac2fff",
|
||||||
"revCount": 723,
|
"revCount": 715,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://git.outfoxxed.me/quickshell/quickshell"
|
"url": "https://git.outfoxxed.me/quickshell/quickshell"
|
||||||
},
|
},
|
||||||
|
|
@ -631,11 +631,11 @@
|
||||||
},
|
},
|
||||||
"stable": {
|
"stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1767313136,
|
"lastModified": 1767051569,
|
||||||
"narHash": "sha256-16KkgfdYqjaeRGBaYsNrhPRRENs0qzkQVUooNHtoy2w=",
|
"narHash": "sha256-0MnuWoN+n1UYaGBIpqpPs9I9ZHW4kynits4mrnh1Pk4=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "ac62194c3917d5f474c1a844b6fd6da2db95077d",
|
"rev": "40ee5e1944bebdd128f9fbada44faefddfde29bd",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
||||||
26
flake.nix
26
flake.nix
|
|
@ -48,18 +48,6 @@
|
||||||
inputs.hyprland.follows = "hyprland";
|
inputs.hyprland.follows = "hyprland";
|
||||||
};
|
};
|
||||||
|
|
||||||
/*hyprqt6engine = {
|
|
||||||
url = "github:hyprwm/hyprqt6engine";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
inputs.hyprutils.follows = "hyprutils";
|
|
||||||
inputs.hyprlang.follows = "hyprlang";
|
|
||||||
};*/
|
|
||||||
|
|
||||||
/*qt6engine = {
|
|
||||||
url = "github:kosslan/qt6engine";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};*/
|
|
||||||
|
|
||||||
quickshell = {
|
quickshell = {
|
||||||
url = "git+https://git.outfoxxed.me/quickshell/quickshell";
|
url = "git+https://git.outfoxxed.me/quickshell/quickshell";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
@ -91,7 +79,6 @@
|
||||||
./modules/hyprland
|
./modules/hyprland
|
||||||
./modules/xserver
|
./modules/xserver
|
||||||
./systems/msi
|
./systems/msi
|
||||||
#(inputs.vps-testing.nixosConfigurations.localHostModule)
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -108,19 +95,6 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
userland = nixpkgs.lib.nixosSystem rec {
|
|
||||||
system = "x86_64-linux";
|
|
||||||
specialArgs = { inherit self system inputs; };
|
|
||||||
|
|
||||||
modules = [
|
|
||||||
./modules/impurity.nix
|
|
||||||
./modules/preserve-system.nix
|
|
||||||
./modules/system.nix
|
|
||||||
./modules/hyprland
|
|
||||||
./systems/userland
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
msi-impure = self.nixosConfigurations.msi.extendModules { modules = [ { impurity.enable = true; } ]; };
|
msi-impure = self.nixosConfigurations.msi.extendModules { modules = [ { impurity.enable = true; } ]; };
|
||||||
lenovo-impure = self.nixosConfigurations.lenovo.extendModules { modules = [ { impurity.enable = true; } ]; };
|
lenovo-impure = self.nixosConfigurations.lenovo.extendModules { modules = [ { impurity.enable = true; } ]; };
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -102,7 +102,13 @@
|
||||||
use-package
|
use-package
|
||||||
vertico
|
vertico
|
||||||
which-key
|
which-key
|
||||||
melpaPackages.ws-butler
|
(melpaPackages.ws-butler.overrideAttrs { # https://github.com/nix-community/emacs-overlay/issues/499
|
||||||
|
src = pkgs.fetchFromSavannah {
|
||||||
|
repo = "emacs/nongnu";
|
||||||
|
rev = "9ee5a7657a22e836618813c2e2b64a548d27d2f";
|
||||||
|
hash = "sha256-S9aFJcFMkyB1KozJc9hpwKjAMkOyEnCZ6Wf3JVZ8d0c=";
|
||||||
|
};
|
||||||
|
})
|
||||||
minuet
|
minuet
|
||||||
zig-ts-mode
|
zig-ts-mode
|
||||||
]));
|
]));
|
||||||
|
|
|
||||||
|
|
@ -74,7 +74,7 @@ in stdenv.mkDerivation {
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download2.interactivebrokers.com/installers/tws/latest-standalone/tws-latest-standalone-linux-x64.sh";
|
url = "https://download2.interactivebrokers.com/installers/tws/latest-standalone/tws-latest-standalone-linux-x64.sh";
|
||||||
hash = "sha256-c+PptydEHvVkntDzX1Eod06hSE7prhuoXiTFZK+7dTI=";
|
hash = "sha256-QN7dSe+R2kfDjtJWa9TIGbc8zCSC3XNmxSxOZOjOB2o=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,6 @@
|
||||||
git
|
git
|
||||||
git-lfs
|
git-lfs
|
||||||
vim
|
vim
|
||||||
android-tools
|
|
||||||
];
|
];
|
||||||
|
|
||||||
services.ntp.enable = true;
|
services.ntp.enable = true;
|
||||||
|
|
@ -70,6 +69,7 @@
|
||||||
# removable disks in file manager
|
# removable disks in file manager
|
||||||
services.udisks2.enable = true;
|
services.udisks2.enable = true;
|
||||||
|
|
||||||
|
programs.adb.enable = true;
|
||||||
users.users.${config.main-user}.extraGroups = [ "adbusers" ];
|
users.users.${config.main-user}.extraGroups = [ "adbusers" ];
|
||||||
|
|
||||||
services.tailscale.enable = true;
|
services.tailscale.enable = true;
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@
|
||||||
typescript-language-server
|
typescript-language-server
|
||||||
astro-language-server
|
astro-language-server
|
||||||
haskell-language-server
|
haskell-language-server
|
||||||
#glslls
|
glslls
|
||||||
zls
|
zls
|
||||||
eslint
|
eslint
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -10,12 +10,6 @@ ClickableIcon {
|
||||||
|
|
||||||
PwObjectTracker { objects: [ node ] }
|
PwObjectTracker { objects: [ node ] }
|
||||||
|
|
||||||
PwNodePeakMonitor {
|
|
||||||
id: peakMonitor
|
|
||||||
node: root.node
|
|
||||||
enabled: tooltip.visible
|
|
||||||
}
|
|
||||||
|
|
||||||
implicitHeight: width;
|
implicitHeight: width;
|
||||||
acceptedButtons: Qt.LeftButton | Qt.RightButton;
|
acceptedButtons: Qt.LeftButton | Qt.RightButton;
|
||||||
fillWindowWidth: true
|
fillWindowWidth: true
|
||||||
|
|
@ -61,7 +55,6 @@ ClickableIcon {
|
||||||
|
|
||||||
//enabled: !node.audio.muted
|
//enabled: !node.audio.muted
|
||||||
value: node.audio.volume
|
value: node.audio.volume
|
||||||
peak: peakMonitor.peak
|
|
||||||
onValueChanged: node.audio.volume = value
|
onValueChanged: node.audio.volume = value
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -45,7 +45,6 @@ ColumnLayout {
|
||||||
required property PwLinkGroup modelData;
|
required property PwLinkGroup modelData;
|
||||||
node: trackedNode.isSink ? modelData.source : modelData.target;
|
node: trackedNode.isSink ? modelData.source : modelData.target;
|
||||||
state: modelData.state;
|
state: modelData.state;
|
||||||
peakDetect: trackedNode.isSink
|
|
||||||
|
|
||||||
image: {
|
image: {
|
||||||
let icon = "";
|
let icon = "";
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,6 @@ RowLayout {
|
||||||
required property PwNode node;
|
required property PwNode node;
|
||||||
required property string image;
|
required property string image;
|
||||||
required property Item headerComponent;
|
required property Item headerComponent;
|
||||||
property bool peakDetect: true;
|
|
||||||
|
|
||||||
property int state: PwLinkState.Unlinked;
|
property int state: PwLinkState.Unlinked;
|
||||||
|
|
||||||
|
|
@ -22,12 +21,6 @@ RowLayout {
|
||||||
|
|
||||||
PwObjectTracker { objects: [ node ] }
|
PwObjectTracker { objects: [ node ] }
|
||||||
|
|
||||||
PwNodePeakMonitor {
|
|
||||||
id: peakMonitor
|
|
||||||
node: root.node
|
|
||||||
enabled: root.peakDetect
|
|
||||||
}
|
|
||||||
|
|
||||||
ClickableIcon {
|
ClickableIcon {
|
||||||
image: root.image
|
image: root.image
|
||||||
asynchronous: true
|
asynchronous: true
|
||||||
|
|
@ -51,7 +44,6 @@ RowLayout {
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
|
|
||||||
value: node.audio.volume
|
value: node.audio.volume
|
||||||
peak: root.peakDetect ? peakMonitor.peak : 1
|
|
||||||
onValueChanged: node.audio.volume = value
|
onValueChanged: node.audio.volume = value
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,13 +7,11 @@ Item {
|
||||||
property real to: 1.5
|
property real to: 1.5
|
||||||
property real warning: 1.0
|
property real warning: 1.0
|
||||||
property real value: 0.0
|
property real value: 0.0
|
||||||
property real peak: 1.0
|
|
||||||
|
|
||||||
implicitWidth: groove.implicitWidth
|
implicitWidth: groove.implicitWidth
|
||||||
implicitHeight: 20
|
implicitHeight: 20
|
||||||
|
|
||||||
property real __valueOffset: ((value - from) / (to - from)) * groove.width
|
property real __valueOffset: ((value - from) / (to - from)) * groove.width
|
||||||
property real __peakOffset: peak * __valueOffset
|
|
||||||
property real __wheelValue: -1
|
property real __wheelValue: -1
|
||||||
|
|
||||||
MouseArea {
|
MouseArea {
|
||||||
|
|
@ -57,24 +55,10 @@ Item {
|
||||||
}
|
}
|
||||||
|
|
||||||
radius: 5
|
radius: 5
|
||||||
color: "#40ceffff"
|
color: "#80ceffff"
|
||||||
width: __valueOffset
|
width: __valueOffset
|
||||||
}
|
}
|
||||||
|
|
||||||
Rectangle {
|
|
||||||
id: peakFill
|
|
||||||
|
|
||||||
anchors {
|
|
||||||
left: groove.left
|
|
||||||
top: groove.top
|
|
||||||
bottom: groove.bottom
|
|
||||||
}
|
|
||||||
|
|
||||||
radius: 5
|
|
||||||
color: "#60ceffff"
|
|
||||||
width: __peakOffset
|
|
||||||
}
|
|
||||||
|
|
||||||
Rectangle {
|
Rectangle {
|
||||||
id: groove
|
id: groove
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -15,11 +15,6 @@ BarWidgetInner {
|
||||||
margins: 5
|
margins: 5
|
||||||
}
|
}
|
||||||
|
|
||||||
Network {
|
|
||||||
Layout.fillWidth: true
|
|
||||||
bar: root.bar
|
|
||||||
}
|
|
||||||
|
|
||||||
Bluetooth {
|
Bluetooth {
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
bar: root.bar
|
bar: root.bar
|
||||||
|
|
|
||||||
|
|
@ -1,132 +0,0 @@
|
||||||
pragma ComponentBehavior: Bound
|
|
||||||
import QtQuick
|
|
||||||
import QtQuick.Layouts
|
|
||||||
import QtQuick.Controls
|
|
||||||
import Quickshell
|
|
||||||
import Quickshell.Widgets
|
|
||||||
import Quickshell.Networking
|
|
||||||
import qs
|
|
||||||
import qs.bar
|
|
||||||
|
|
||||||
ClickableIcon {
|
|
||||||
id: root
|
|
||||||
required property var bar;
|
|
||||||
readonly property NetworkDevice adapter: Networking.devices.values[0]
|
|
||||||
readonly property bool connected: adapter.connected
|
|
||||||
readonly property WifiNetwork activeNetwork: adapter.networks.values.find(network => network.connected)
|
|
||||||
|
|
||||||
property bool showMenu: false
|
|
||||||
|
|
||||||
onPressed: event => {
|
|
||||||
event.accepted = true;
|
|
||||||
if (event.button === Qt.RightButton) {
|
|
||||||
showMenu = !showMenu;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
onClicked: event => {
|
|
||||||
if (event.button === Qt.LeftButton) {
|
|
||||||
Networking.wifiEnabled = !Networking.wifiEnabled;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
showPressed: showMenu || (pressedButtons & ~Qt.RightButton)
|
|
||||||
|
|
||||||
implicitHeight: width
|
|
||||||
fillWindowWidth: true
|
|
||||||
acceptedButtons: Qt.LeftButton | Qt.RightButton
|
|
||||||
image: Networking.wifiEnabled
|
|
||||||
? (connected ? `root:/icons/wifi-${Math.round(root.activeNetwork.signalStrength * 3)}.svg` : "root:/icons/wifi-x.svg")
|
|
||||||
: "root:/icons/wifi-slash.svg"
|
|
||||||
|
|
||||||
property var tooltip: TooltipItem {
|
|
||||||
tooltip: bar.tooltip
|
|
||||||
owner: root
|
|
||||||
show: root.containsMouse
|
|
||||||
|
|
||||||
Label { text: "Network" }
|
|
||||||
}
|
|
||||||
|
|
||||||
property var rightclickMenu: TooltipItem {
|
|
||||||
id: rightclickMenu
|
|
||||||
tooltip: bar.tooltip
|
|
||||||
owner: root
|
|
||||||
|
|
||||||
isMenu: true
|
|
||||||
show: root.showMenu
|
|
||||||
onClose: root.showMenu = false
|
|
||||||
|
|
||||||
Loader {
|
|
||||||
width: 400
|
|
||||||
active: root.showMenu || rightclickMenu.visible
|
|
||||||
|
|
||||||
sourceComponent: Column {
|
|
||||||
spacing: 5
|
|
||||||
|
|
||||||
move: Transition {
|
|
||||||
SmoothedAnimation { property: "y"; velocity: 350 }
|
|
||||||
}
|
|
||||||
|
|
||||||
RowLayout {
|
|
||||||
width: parent.width
|
|
||||||
|
|
||||||
ClickableIcon {
|
|
||||||
image: root.image
|
|
||||||
implicitHeight: 40
|
|
||||||
implicitWidth: height
|
|
||||||
onClicked: root.adapter.enabled = !root.adapter.enabled
|
|
||||||
}
|
|
||||||
|
|
||||||
Label {
|
|
||||||
text: `Wifi (${root.adapter.name})`
|
|
||||||
}
|
|
||||||
|
|
||||||
Item { Layout.fillWidth: true }
|
|
||||||
|
|
||||||
ClickableIcon {
|
|
||||||
image: Networking.wifiEnabled ? "root:/icons/wifi-slash.svg" : "root:/icons/wifi-x.svg"
|
|
||||||
implicitHeight: 24
|
|
||||||
implicitWidth: height
|
|
||||||
onClicked: Networking.wifiEnabled = !Networking.wifiEnabled
|
|
||||||
}
|
|
||||||
|
|
||||||
ActivityButton {
|
|
||||||
image: "root:/icons/binoculars.svg"
|
|
||||||
implicitHeight: 24
|
|
||||||
implicitWidth: height
|
|
||||||
onClicked: root.adapter.scannerEnabled = !root.adapter.scannerEnabled
|
|
||||||
showAction: root.adapter.scannerEnabled
|
|
||||||
Layout.rightMargin: 4
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Rectangle {
|
|
||||||
width: parent.width
|
|
||||||
implicitHeight: 1
|
|
||||||
visible: root.adapter.networks.values.length > 0
|
|
||||||
|
|
||||||
color: ShellGlobals.colors.separator
|
|
||||||
}
|
|
||||||
|
|
||||||
Repeater {
|
|
||||||
model: ScriptModel {
|
|
||||||
values: [...root.adapter.networks.values].sort((a, b) => {
|
|
||||||
if (a.connected && !b.connected) return -1;
|
|
||||||
if (b.connected && !a.connected) return 1;
|
|
||||||
if (a.bonded && !b.bonded) return -1;
|
|
||||||
if (b.bonded && !a.bonded) return 1;
|
|
||||||
return b.name - a.name;
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
delegate: NetworkDelegate {
|
|
||||||
required property var modelData
|
|
||||||
device: root.adapter
|
|
||||||
network: modelData
|
|
||||||
width: parent.width
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,63 +0,0 @@
|
||||||
import QtQuick
|
|
||||||
import QtQuick.Layouts
|
|
||||||
import QtQuick.Controls
|
|
||||||
import Quickshell
|
|
||||||
import Quickshell.Widgets
|
|
||||||
import Quickshell.Networking
|
|
||||||
import qs
|
|
||||||
import qs.bar
|
|
||||||
|
|
||||||
WrapperMouseArea {
|
|
||||||
id: root
|
|
||||||
required property NetworkDevice device
|
|
||||||
required property WifiNetwork network
|
|
||||||
property bool menuOpen: false
|
|
||||||
readonly property bool showBg: false
|
|
||||||
hoverEnabled: true
|
|
||||||
|
|
||||||
onClicked: menuOpen = !menuOpen
|
|
||||||
|
|
||||||
WrapperRectangle {
|
|
||||||
color: root.showBg ? ShellGlobals.colors.widget : "transparent"
|
|
||||||
border.width: 1
|
|
||||||
border.color: root.showBg ? ShellGlobals.colors.widgetOutline : "transparent"
|
|
||||||
radius: 4
|
|
||||||
rightMargin: 2
|
|
||||||
|
|
||||||
ColumnLayout {
|
|
||||||
RowLayout {
|
|
||||||
ClickableIcon {
|
|
||||||
image: `root:/icons/wifi-${Math.round(root.network.signalStrength * 3)}`
|
|
||||||
implicitHeight: 40
|
|
||||||
implicitWidth: height
|
|
||||||
}
|
|
||||||
|
|
||||||
Label {
|
|
||||||
text: root.network.name
|
|
||||||
}
|
|
||||||
|
|
||||||
Item { Layout.fillWidth: true }
|
|
||||||
|
|
||||||
ActivityButton {
|
|
||||||
image: root.network.connected ? "root:/icons/plugs-connected.svg" : "root:/icons/plugs.svg"
|
|
||||||
implicitHeight: 24
|
|
||||||
implicitWidth: height
|
|
||||||
showAction: root.network.stateChanging
|
|
||||||
onClicked: {
|
|
||||||
if (showAction) return;
|
|
||||||
else if (root.network.connected) root.device.disconnect();
|
|
||||||
else root.network.connect();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ClickableIcon {
|
|
||||||
image: "root:/icons/trash.svg"
|
|
||||||
implicitHeight: 24
|
|
||||||
implicitWidth: height
|
|
||||||
visible: root.network.known
|
|
||||||
onClicked: root.network.forget()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue