added
This commit is contained in:
parent
008d5c15c0
commit
849cae10fa
8 changed files with 135 additions and 8 deletions
|
|
@ -4,6 +4,12 @@ My config for Hyprland desktop that I normally use as my daily driver (read: all
|
||||||
|
|
||||||
## Useful commands
|
## Useful commands
|
||||||
|
|
||||||
|
if you're curious what's currently available you can run:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
nix flake show github:alsaiduq-lab/nix-dotfiles
|
||||||
|
```
|
||||||
|
|
||||||
list generations
|
list generations
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|
|
||||||
25
flake.nix
25
flake.nix
|
|
@ -13,6 +13,10 @@
|
||||||
url = "github:fufexan/nix-gaming";
|
url = "github:fufexan/nix-gaming";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
nix-monitor = {
|
||||||
|
url = "github:antonjah/nix-monitor";
|
||||||
|
};
|
||||||
|
|
||||||
proton-cachyos = {
|
proton-cachyos = {
|
||||||
url = "github:Arsalan2356/proton-cachyos-flake";
|
url = "github:Arsalan2356/proton-cachyos-flake";
|
||||||
};
|
};
|
||||||
|
|
@ -39,6 +43,7 @@
|
||||||
dankMaterialShell = {
|
dankMaterialShell = {
|
||||||
url = "github:AvengeMedia/DankMaterialShell";
|
url = "github:AvengeMedia/DankMaterialShell";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
inputs.quickshell.follows = "quickshell";
|
||||||
};
|
};
|
||||||
|
|
||||||
nvim-dots = {
|
nvim-dots = {
|
||||||
|
|
@ -68,7 +73,11 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
nixcord = {
|
nixcord = {
|
||||||
url = "github:FlameFlag/nixcord";
|
url = "github:kaylorben/nixcord";
|
||||||
|
};
|
||||||
|
|
||||||
|
dw-proton = {
|
||||||
|
url = "github:Momoyaan/dwproton-flake";
|
||||||
};
|
};
|
||||||
|
|
||||||
disko = {
|
disko = {
|
||||||
|
|
@ -105,6 +114,7 @@
|
||||||
disko,
|
disko,
|
||||||
nix-index-database,
|
nix-index-database,
|
||||||
aagl,
|
aagl,
|
||||||
|
dw-proton,
|
||||||
#sops-nix,
|
#sops-nix,
|
||||||
...
|
...
|
||||||
} @ inputs: let
|
} @ inputs: let
|
||||||
|
|
@ -126,6 +136,7 @@
|
||||||
rpcs3
|
rpcs3
|
||||||
clear-sans
|
clear-sans
|
||||||
binary-font
|
binary-font
|
||||||
|
dms-plugins
|
||||||
;
|
;
|
||||||
};
|
};
|
||||||
nixosConfigurations.nixos = nixpkgs.lib.nixosSystem {
|
nixosConfigurations.nixos = nixpkgs.lib.nixosSystem {
|
||||||
|
|
@ -145,18 +156,19 @@
|
||||||
hostPlatform = system;
|
hostPlatform = system;
|
||||||
overlays = [
|
overlays = [
|
||||||
(final: prev: {
|
(final: prev: {
|
||||||
quickshell = inputs.quickshell.packages.${system}.default;
|
quickshell = inputs.quickshell.packages.${system}.default.withModules [final.qt6Packages.qtwebsockets];
|
||||||
ghostty = inputs.ghostty.packages.${system}.default;
|
ghostty = inputs.ghostty.packages.${system}.default;
|
||||||
hu-tao-animated-cursor = inputs.hu-tao-cursor.packages.${system}.default;
|
hu-tao-animated-cursor = inputs.hu-tao-cursor.packages.${system}.default;
|
||||||
grim-hyprland = inputs.grim-hyprland.packages.${system}.default;
|
grim-hyprland = inputs.grim-hyprland.packages.${system}.default;
|
||||||
dms-shell = inputs.dankMaterialShell.packages.${system}.default;
|
dms-shell = inputs.dankMaterialShell.packages.${system}.default;
|
||||||
pinix = inputs.pinix.packages.${system}.default;
|
pinix = inputs.pinix.packages.${system}.default;
|
||||||
wine-cachyos = inputs.nix-gaming.packages.${system}.wine-cachyos;
|
wine-tkg = inputs.nix-gaming.packages.${system}.wine-tkg;
|
||||||
proton-cachyos = inputs.proton-cachyos.packages.${system}.proton-cachyos;
|
proton-cachyos = inputs.proton-cachyos.packages.${system}.proton-cachyos;
|
||||||
desktop-gremlin = inputs.linux-desktop-gremlin.packages.${system}.default;
|
desktop-gremlin = inputs.linux-desktop-gremlin.packages.${system}.default;
|
||||||
ipc-bridge = inputs.nix-gaming.packages.${system}.wine-discord-ipc-bridge;
|
ipc-bridge = inputs.nix-gaming.packages.${system}.wine-discord-ipc-bridge;
|
||||||
dgop = unstablePkgs.dgop;
|
dgop = unstablePkgs.dgop;
|
||||||
hyprland = inputs.hyprland.packages.${system}.default;
|
hyprland = inputs.hyprland.packages.${system}.default;
|
||||||
|
dw-proton = inputs.dw-proton.packages.${system}.default;
|
||||||
})
|
})
|
||||||
(final: prev: {
|
(final: prev: {
|
||||||
inherit
|
inherit
|
||||||
|
|
@ -166,13 +178,9 @@
|
||||||
minijinja-cli
|
minijinja-cli
|
||||||
thorium
|
thorium
|
||||||
rpcs3
|
rpcs3
|
||||||
|
dms-plugins
|
||||||
;
|
;
|
||||||
})
|
})
|
||||||
|
|
||||||
(final: prev: {
|
|
||||||
clear-sans = prev.clear-sans.clear-sans;
|
|
||||||
binary-font = prev.binary-font.binary-clock-font;
|
|
||||||
})
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
@ -190,6 +198,7 @@
|
||||||
};
|
};
|
||||||
sharedModules = [
|
sharedModules = [
|
||||||
inputs.nixcord.homeModules.nixcord
|
inputs.nixcord.homeModules.nixcord
|
||||||
|
inputs.nix-monitor.homeManagerModules.default
|
||||||
];
|
];
|
||||||
users.cobray = import ./home-manager/cobray.nix;
|
users.cobray = import ./home-manager/cobray.nix;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,38 @@
|
||||||
enableAudioWavelength = true;
|
enableAudioWavelength = true;
|
||||||
enableCalendarEvents = true;
|
enableCalendarEvents = true;
|
||||||
enableClipboardPaste = true;
|
enableClipboardPaste = true;
|
||||||
|
|
||||||
|
plugins = {
|
||||||
|
lyricsOnPanel = {
|
||||||
|
src = "${pkgs.dms-plugins.lyrics-on-panel}/plugin";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
quickshell.package = pkgs.quickshell;
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.nix-monitor = {
|
||||||
|
enable = true;
|
||||||
|
rebuildCommand = [
|
||||||
|
"bash"
|
||||||
|
"-c"
|
||||||
|
"cd ~/nix && nix flake update && sudo pixos-rebuild switch --flake ~/nix 2>&1"
|
||||||
|
];
|
||||||
|
gcCommand = [
|
||||||
|
"bash"
|
||||||
|
"-c"
|
||||||
|
"sudo pix-collect-garbage -d 2>&1"
|
||||||
|
];
|
||||||
|
generationsCommand = ["bash" "-c" "sudo nix-env --list-generations --profile /nix/var/nix/profiles/system | wc -l"];
|
||||||
|
updateInterval = 1800;
|
||||||
|
localRevisionCommand = ["bash" "-c" "echo 0"];
|
||||||
|
remoteRevisionCommand = [
|
||||||
|
"${pkgs.bash}/bin/bash"
|
||||||
|
"-l"
|
||||||
|
"-c"
|
||||||
|
"${pkgs.curl}/bin/curl -s https://api.github.com/repos/NixOS/nixpkgs/git/ref/heads/nixos-25.11 2>/dev/null | ${pkgs.jq}/bin/jq -r '.object.sha' 2>/dev/null | cut -c 1-7 || echo 'N/A'"
|
||||||
|
];
|
||||||
|
nixpkgsChannel = "nixos-25.11";
|
||||||
};
|
};
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
|
|
@ -25,5 +57,22 @@
|
||||||
cliphist
|
cliphist
|
||||||
kdePackages.dolphin
|
kdePackages.dolphin
|
||||||
];
|
];
|
||||||
|
|
||||||
home.sessionPath = ["${pkgs.quickshell}/bin"];
|
home.sessionPath = ["${pkgs.quickshell}/bin"];
|
||||||
|
|
||||||
|
systemd.user.services.lyrics-on-panel = {
|
||||||
|
Unit = {
|
||||||
|
Description = "Lyrics-on-Panel MPRIS2 Backend";
|
||||||
|
After = ["graphical-session.target"];
|
||||||
|
};
|
||||||
|
Service = {
|
||||||
|
Type = "simple";
|
||||||
|
ExecStart = "${pkgs.dms-plugins.lyrics-on-panel}/bin/lyrics-on-panel-backend";
|
||||||
|
Restart = "on-failure";
|
||||||
|
RestartSec = 5;
|
||||||
|
};
|
||||||
|
Install = {
|
||||||
|
WantedBy = ["graphical-session.target"];
|
||||||
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,11 @@
|
||||||
security.sudo = {
|
security.sudo = {
|
||||||
enable = true;
|
enable = true;
|
||||||
wheelNeedsPassword = true;
|
wheelNeedsPassword = true;
|
||||||
|
extraConfig = ''
|
||||||
|
${config.theme.user} ALL=(ALL) NOPASSWD: /run/current-system/sw/bin/pixos-rebuild
|
||||||
|
${config.theme.user} ALL=(ALL) NOPASSWD: /run/current-system/sw/bin/pix-collect-garbage
|
||||||
|
${config.theme.user} ALL=(ALL) NOPASSWD: /run/current-system/sw/bin/nix-env
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
programs."${config.theme.Shell}".enable = true;
|
programs."${config.theme.Shell}".enable = true;
|
||||||
|
|
|
||||||
3
pkgs/README.md
Normal file
3
pkgs/README.md
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
## random assorted stuff
|
||||||
|
|
||||||
|
aka stuff that needs to be built for nix (or different flags)
|
||||||
|
|
@ -7,4 +7,7 @@
|
||||||
minijinja-cli = pkgs.callPackage ./minijinja-cli {};
|
minijinja-cli = pkgs.callPackage ./minijinja-cli {};
|
||||||
thorium = pkgs.callPackage ./thorium {};
|
thorium = pkgs.callPackage ./thorium {};
|
||||||
rpcs3 = pkgs.callPackage ./rpcs3 {};
|
rpcs3 = pkgs.callPackage ./rpcs3 {};
|
||||||
|
dms-plugins = {
|
||||||
|
lyrics-on-panel = pkgs.callPackage ./dms-plugins/lyrics-on-panel {};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
3
pkgs/dms-plugins/default.nix
Normal file
3
pkgs/dms-plugins/default.nix
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
{pkgs}: {
|
||||||
|
lyrics-on-panel = pkgs.callPackage ./lyrics-on-panel {};
|
||||||
|
}
|
||||||
49
pkgs/dms-plugins/lyrics-on-panel/default.nix
Normal file
49
pkgs/dms-plugins/lyrics-on-panel/default.nix
Normal file
|
|
@ -0,0 +1,49 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
stdenvNoCC,
|
||||||
|
fetchFromGitHub,
|
||||||
|
python313,
|
||||||
|
makeWrapper,
|
||||||
|
}: let
|
||||||
|
python = python313.withPackages (ps: [
|
||||||
|
ps.websockets
|
||||||
|
ps.dbus-python
|
||||||
|
]);
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "KangweiZhu";
|
||||||
|
repo = "lyrics-on-panel";
|
||||||
|
rev = "main";
|
||||||
|
hash = "sha256-8H0BUmr7OP5Zq47yj2Uk1hKQxezO4ccs7lfApDXHoE0=";
|
||||||
|
};
|
||||||
|
in
|
||||||
|
stdenvNoCC.mkDerivation {
|
||||||
|
pname = "dms-lyrics-on-panel";
|
||||||
|
version = "unstable";
|
||||||
|
|
||||||
|
inherit src;
|
||||||
|
|
||||||
|
nativeBuildInputs = [makeWrapper];
|
||||||
|
|
||||||
|
dontBuild = true;
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
|
mkdir -p $out/plugin $out/bin
|
||||||
|
cp -r dms/* $out/plugin/
|
||||||
|
cp -r backend/src $out/backend
|
||||||
|
|
||||||
|
makeWrapper ${python}/bin/python $out/bin/lyrics-on-panel-backend \
|
||||||
|
--add-flags "$out/backend/server.py"
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Lyrics on Panel - DMS plugin and backend";
|
||||||
|
homepage = "https://github.com/KangweiZhu/lyrics-on-panel";
|
||||||
|
license = lib.licenses.gpl3;
|
||||||
|
maintainer = ["Cobray"];
|
||||||
|
};
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue