1
0
Fork 0

add chatterino, plasma-config, kitty, runelite, eza

fix formatting, fix btrfs being enabled by default update flake
This commit is contained in:
Philipp 2025-02-08 23:19:59 +01:00
parent 01f8435ba7
commit 39fb8c64dc
Signed by: Philipp
GPG key ID: 9EBD8439AFBAB750
15 changed files with 195 additions and 48 deletions

View file

@ -0,0 +1,22 @@
{
config,
lib,
pkgs,
namespace,
...
}:
with lib;
with lib.${namespace};
let
cfg = config.${namespace}.apps.chatterino;
in
{
options.${namespace}.apps.chatterino = with types; {
enable = mkBoolOpt false "Whether or not to enable kitty.";
};
config = mkIf cfg.enable {
home.packages = [ pkgs.chatterino2 ];
};
}

View file

@ -0,0 +1,60 @@
{
config,
lib,
namespace,
...
}:
with lib;
with lib.${namespace};
let
cfg = config.${namespace}.desktop.panel;
in
{
options.${namespace}.desktop.panel = with types; {
enable = mkBoolOpt false "Whether or not to enable custom panel settings.";
};
config = mkIf cfg.enable {
programs.plasma = {
enable = true;
panels = [
{
location = "top";
floating = true;
screen = [
1
3
];
widgets = [
{
kickoff = {
sortAlphabetically = true;
icon = "nix-snowflake-white";
};
}
"org.kde.plasma.pager"
{
iconTasks = {
launchers = [
"applications:org.kde.dolphin.desktop"
"applications:kitty.desktop"
"applications:librewolf.desktop"
];
};
}
"org.kde.plasma.marginsseparator"
"org.kde.plasma.systemtray"
{
digitalClock = {
calendar.firstDayOfWeek = "monday";
time.format = "24h";
};
}
"org.kde.plasma.showdesktop"
];
}
];
};
};
}

View file

@ -11,14 +11,17 @@ let
in
{
options.${namespace}.desktop.hotkeys = with types; {
enable = mkBoolOpt false "Whether or not to enable kitty.";
enable = mkBoolOpt false "Whether or not to enable custom shortcuts.";
};
config = mkIf cfg.enable {
programs.plasma = {
enable = true;
shortcuts.kwin = {
"Window Close" = [ "Meta+Shift+Q" "Alt+F4" ];
"Window Close" = [
"Meta+Shift+Q"
"Alt+F4"
];
};
};
};

View file

@ -0,0 +1,21 @@
{
config,
lib,
pkgs,
namespace,
...
}:
with lib;
with lib.${namespace};
let
cfg = config.${namespace}.desktop.panel;
in
{
options.${namespace}.games.runelite = with types; {
enable = mkBoolOpt false "Whether or not to enable the runelite client for runescape.";
};
config = mkIf cfg.enable {
home.packages = [ pkgs.runelite ];
};
}

View file

@ -0,0 +1,22 @@
{
config,
lib,
pkgs,
namespace,
...
}:
with lib;
with lib.${namespace};
let
cfg = config.${namespace}.cli.eza;
in
{
options.${namespace}.cli.eza = with types; {
enable = mkBoolOpt false "Whether or not to use Plasma as the desktop environment.";
};
config = mkIf cfg.enable {
environment.systemPackages = [ pkgs.eza ];
};
}

View file

@ -1,5 +1,4 @@
{
options,
config,
lib,
pkgs,
@ -48,9 +47,12 @@ in
with pkgs.kdePackages;
[ ] ++ excludePackages ++ cfg.extraExcludePackages;
networking.networkmanager.enable = true;
environment.systemPackages = with pkgs; [
pinentry-qt
kdiskmark
networkmanager
kdePackages.networkmanager-qt
];
};

View file

@ -12,7 +12,7 @@ let
in
{
options.${namespace}.services.btrfs = {
enable = mkBoolOpt true "BTRFS";
enable = mkBoolOpt false "BTRFS";
};
config = mkIf cfg.enable {

View file

@ -38,6 +38,7 @@ in
not path /config.json
not path /manifest.json
not path /sw.js
not path /pdf.worker.min.js
not path /olm.wasm

View file

@ -0,0 +1,26 @@
{
config,
pkgs,
lib,
namespace,
...
}:
with lib;
with lib.${namespace};
let
cfg = config.${namespace}.system.gnupg;
in
{
options.${namespace}.system.gnupg = with types; {
enable = mkBoolOpt false "Whether or not to manage fonts.";
};
config = mkIf cfg.enable {
services.pcscd.enable = true;
programs.gnupg.agent = {
enable = true;
enableSSHSupport = true;
};
};
}

View file

@ -1,16 +1,7 @@
{
options,
config,
pkgs,
lib,
namespace,
...
}:
with lib;
with lib.${namespace};
let
cfg = config.${namespace}.user;
in
{
programs.fish = {
enable = true;