chore: update flake & niri blur

This commit is contained in:
danny 2026-03-06 17:06:53 +08:00
parent 601dfb9217
commit 98b4f598f8
36 changed files with 516 additions and 317 deletions

View file

@ -8,13 +8,13 @@ in
{
systemConf = {
inherit hostname username;
niri.enable = true;
enableHomeManager = true;
windowManager = "niri";
};
imports = [
../../modules/presets/basic.nix
../public/dn
../public/dn/ntfy.nix
../public/dn/presets/local.nix
./common
./games
./home
@ -24,6 +24,9 @@ in
./utility
./virtualisation
./network
../../modules/shells/noctalia
../../modules/sunshine.nix
../../modules/card-reader.nix
];
users.users."${username}".openssh.authorizedKeys.keys = [

View file

@ -1,4 +1,5 @@
{
pkgs,
config,
lib,
...
@ -10,6 +11,10 @@ let
in
{
home-manager.users."${username}" = {
home.packages = with pkgs; [
mattermost-desktop
];
home.sessionVariables = {
BROWSER = mkForce "chromium";
};
@ -27,9 +32,9 @@ in
}
];
programs.hyprlock.monitors = [
"LG Display"
];
programs.noctalia-shell = {
settings = { };
};
programs.chromium = {
enable = true;
@ -55,34 +60,7 @@ in
imports = [
../../../../home/presets/basic.nix
# waybar
(import ../../../../home/user/waybar.nix {
settings = [
{
output = "eDP-1";
height = 46;
modules-left = [
"custom/os"
"hyprland/workspaces"
"clock"
"mpris"
];
modules-right = [
"wlr/taskbar"
"temperature"
"custom/wallRand"
"custom/wireguard"
"custom/recording"
"idle_inhibitor"
"network"
"pulseaudio"
"battery"
"custom/swaync"
];
}
];
})
../../../../home/user/zellij.nix
];
};
}

View file

@ -1,5 +1,5 @@
{
imports = [
../../../modules/wireguard.nix
# ../../../modules/wireguard.nix
];
}

View file

@ -1,7 +1,4 @@
{ config, lib, ... }:
let
inherit (lib) mkForce;
in
{ ... }:
{
imports = [
(import ../../../modules/nvidia.nix {
@ -10,6 +7,4 @@ in
nvidia-bus-id = "PCI:1:0:0";
})
];
hardware.nvidia.package = mkForce config.boot.kernelPackages.nvidiaPackages.beta;
}

View file

@ -38,10 +38,11 @@ in
}
];
nix.settings.download-buffer-size = 671088640;
imports = [
../../modules/presets/basic.nix
../public/dn
../public/dn/ntfy.nix
../public/dn/presets/local.nix
./expr
./network
./common

View file

@ -76,10 +76,6 @@ in
}
];
programs.ghostty.settings = {
background-opacity = 0.9;
};
# ==== Shells ==== #
# Caelestia
programs.caelestia.settings = {
@ -92,6 +88,7 @@ in
# Noctalia
programs.noctalia-shell.filteredIds = [
"Brightness"
"Battery"
];
# ==== WM ==== #

View file

@ -40,7 +40,7 @@ sops:
MEdmWkFwNXZoR1ZVRnQ0aWlkYzZwSmsK0EFecUIdqlDKX08oRCoDQQ3QCX1wzb8w
lghDJhWlfuKr+X24GoE4UK04aJVLqVMRRI4BJW+LQXeHS+dWKu3mQA==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2026-01-20T05:40:32Z"
mac: ENC[AES256_GCM,data:2UM15E3aYMunypx6THZTwHdedmUWYKQGgPEqMmT1D/CkWcCmau0Yk2nhALjcXWLuODlkedrjm6tYSPg7Yv/eZUnUwfI9reBAfoGBbJLCIoAloomzzm21xDvIJOco9xyHPKwT4buYYA/mylJvrSi07G0qRM6tINQjhEvVsDIbFR0=,iv:lPo3U/eCSZx6MmqvoTUpk+u6E+fFgED4eq0EF/jk/hs=,tag:b8XyedLJ706LplFF/VafAg==,type:str]
lastmodified: "2026-03-06T08:47:28Z"
mac: ENC[AES256_GCM,data:1q8l6J6ePg3M4YZAxIjvVMzKurmPQHa93wXIQ3YJirVLaPGyXXczFPKrl9iHTPlwI7Vt1KSQGw1hkO2Q6KWSZgKd3/aKJ+HliRhnqbdOJThwbdHzmVq80mnCzG/Z+yYY45ONPI369bVHydZZT7iEjAWi3ndSkC9KFhyEez3Wa2w=,iv:+w+riNzfF4R+EkTON72AskJscqEMJ1WJoFSiJHPSEGc=,tag:wG4ZuOxXE3dzTezHOu9yzg==,type:str]
unencrypted_suffix: _unencrypted
version: 3.11.0
version: 3.12.1

View file

@ -46,7 +46,7 @@ in
'';
imports = [
../public/dn
../public/dn/presets/server.nix
./common
./home
./network

View file

@ -33,8 +33,8 @@ let
};
allowedSSHIPs = concatStringsSep ", " [
"122.117.215.55"
"192.168.100.1/24"
"140.113.229.197/32"
personal.range
];

View file

@ -13,7 +13,7 @@ in
enable = true;
openFirewall = true;
listenPort = 8044;
environmentFile = config.sops.secrets."homepage".path;
environmentFiles = [ config.sops.secrets."homepage".path ];
allowedHosts = "www.${domain},${domain},localhost:${toString cfg.listenPort}";
docker = {
docker = {
@ -64,6 +64,17 @@ in
}
];
}
{
"Development" = [
{
"Forgejo" = {
icon = "forgejo.svg";
description = "Git repository";
href = config.services.forgejo.settings.server.ROOT_URL;
};
}
];
}
{
"VPN & IDP" = [
{
@ -121,6 +132,31 @@ in
icon = "powerdns.svg";
description = "DNS record management";
href = "https://powerdns.${domain}";
widgets =
let
queryProp = ''job="powerdns_recursor"'';
in
[
{
type = "prometheusmetric";
url = "https://metrics.dnywe.com";
refreshInterval = 10000;
metrics = [
{
label = "Up";
query = "up{${queryProp}}";
}
{
label = "Query Rate";
query = "sum(rate(pdns_recursor_questions{${queryProp}}[1h]))";
format = {
type = "number";
suffix = " req/s";
};
}
];
}
];
};
}
{

View file

@ -21,6 +21,8 @@ in
"sa-update.surbl.org"
];
services.opendkim.enable = mkForce false;
mail-server =
let
domain = "net.dn";

View file

@ -143,7 +143,7 @@ in
{
uid = "prometheus-dn-server";
name = "Prometheus";
url = "https://metrics.net.dn";
url = "https://${prometheusHostname}";
type = "prometheus";
}
];

View file

@ -119,7 +119,7 @@ in
serverVersion = lib.replaceStrings [ "." ] [ "_" ] "fabric-${mcVersion}";
in
{
enable = true;
enable = false;
autoStart = true;
enableReload = true;
jvmOpts = "-Xms2144M -Xmx8240M";

View file

@ -48,7 +48,10 @@ in
(import ../../../modules/nextcloud.nix {
hostname = "nextcloud.${domain}";
adminpassFile = secrets."nextcloud/adminPassword".path;
trusted-proxies = [ "10.0.0.0/24" ];
trusted-proxies = [
"10.0.0.0/24"
"10.10.0.0/24"
];
whiteboardSecrets = [
secrets."nextcloud/whiteboard".path
];

View file

@ -21,7 +21,7 @@ nextcloud:
backendsecret: ENC[AES256_GCM,data:pV5yw755RkAwHBdmfeP37/SobFZqJouWyIiRJ+Y2mk0iiVdW04vhYVsyjcI=,iv:NhkewgnyE2Dw8mQMMSq6AWo6IOWu8BlyPZvZAszyZuQ=,tag:BlZO15qZWViV8pCWIgZHZQ==,type:str]
step_ca:
password: ENC[AES256_GCM,data:3NtUAl344gHiXLlMl88X17Vsm/4OKFM0W8bntzbXC0U=,iv:q9cWW8xTxYQnRYohBxnPIsbVSpvkZYVpYLRVeZgmsRM=,tag:ibumK7ebPKNO/CXAS0eeRA==,type:str]
vaultwarden: ENC[AES256_GCM,data:unu2+istP/NHcns2HUvNYveGElAEDFI+6X/KXYu2hKvY9c57PhmGVEmwlNhMWjHOSLaIvF48iDKCMnFnk20Fop5S2PS8WdNQ5sAA3mhoBnYGKIVsSsjpAqdIKj5c+AozeFODuIrCPRFm1JbOlgcmniwWNwbKtXt8GrgHzBbFUNX00npOwK9NmZOTxPVCj6gs3purULbsTzxDYZKdtqoM0Rv8E+MM/SLTR3QJnTCi7CxWfqy2tSsNzFh4puyZ0xf03m/fMP2iJqwZKjr0G5DwMl8ng0XvnojUcAg3OO34T7VCR1E6unqOpt8Mxc4l5eDVZEp6euchLB1GHP1OaElLCGvlp16xFKQyu+XtuFKxDrgl+AjVXl/rdl8Sk7fa9x6VzYbbJIR5Nzrwb+x9sJIc0Q5u6MroVsfawUzNH3aWkBCxQ0jGqkWyAZyumOuLxODpYETUCxiaBW6unEYSABibY5Q=,iv:5T/N41eLnPThRs1nwFiqMqyd6+RMWkDz6N4yVuAojH0=,tag:1gyxAtpZw/uhPWOoioFqKw==,type:str]
vaultwarden: ENC[AES256_GCM,data:iQ6fu3rs0b4kiBKKMwv7EwNCHEbDnOvy0LhxoCo6ppo+3iYy55a86+gf9N2nDG1JiKEGSq6SAWqAG4Zhv4XEXZmjGzuVfpUWvPrXvlHFOv12/OWjOTTojf7JyJXuMNBbElC9aBLh6bfpF9jxMugs1s421QrG4irbK4jIwnKztADlzq+GlkWJgjIXatW6cZ8W3lx2yQO1D/n+MQJom4aCaMz+sbv2EF5hZW90VdLdgunzR15sIF6puremZFq4exS8W6QBV4fD3FgCHGelPLx8En0MyFxkVq2wLyQ88BzQI4eQf3wswOBD26OOH/hgwwzDk7Olv8w0FialtDEa3sM8lL6FHj9/+1RoFs/bLzSCz50PtlwIRChjoeD6zzfvyCuxg3nAJaI8Zm7JbbaLm+QMR0OE7f9H0+/fuxSmXu8pj1vuTXYs0bsrZv6Hr9sbNhIA3+kzzMtUaE8BuPKisx1M4FZiDFr2OPDsxqpkKB5ldqeqX6hVSYq6Skb7Kq7dLQyMWjQcNg==,iv:2pnql+V1QbuB11x7m4figiGJvxusOeVuadINrgjJXCo=,tag:tc/XruhnJ5iybOtajV/Lfg==,type:str]
ldap:
password: ENC[AES256_GCM,data:gz5WBopSffGyvJxKDPekPQ==,iv:bX7N9/oNMhtE/KbPah2ge4s87P2VsxHGoFkOyl83dxs=,tag:YoTe6NPAJgp/0nvhHC9Y5A==,type:str]
env: ENC[AES256_GCM,data:68EvTHeBqtCVfde5oO+Wzny+l/YIMWQmbcNQ0Wl59EjMrSlJM0rmFm2lMJpxKzCN2cFs0N2z6zG1/eQ9t/SxxyVBrNA6ECnCZrerIo2YGlaT30tc1rffpd8TchMH1VKP5qHnbLUqORMx5z0LR4U49l2HVcHgSCjt/1f127oMi411vIU=,iv:+m1F0CBaoJGv6Z1u+h6rbsXGPUhxgHouTalj13ccJiY=,tag:I/hK65yPaIcgHEZVaXJHBA==,type:str]
@ -95,7 +95,7 @@ sops:
OFloWEFuTC9GTXJsMG5NNktmdmIrY1kK0yN0ae0xNaydujV5lt2FiwXdyursG0DK
9i/B3TTAm9csDMMSTSFbiAUJDzG7kIqn++JU/cxvsGScSnhMqjEK/g==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2026-01-30T04:08:29Z"
mac: ENC[AES256_GCM,data:egK9zlAccBV2IeJ+DYTP3AKQUUMFPmts8eZMilQlyh+EE/oXhNnKeKkmNg9h1RwoZ6zh0LRDsyjubCc06PI/wVx2lJ0JfPs4bt6PckC1hZglRSHHjmocyx1eF5bMVfBLmluDzQ3Zms1Ryvuh+M+EjtdhttBljAIb0JIRx8Wzwks=,iv:wWrRiOvzZDboZSMgTzmbVVWzpSIhLdlgxgUIFXCFet0=,tag:YLBtLivKLBvByyfm4PbVXQ==,type:str]
lastmodified: "2026-02-15T10:06:42Z"
mac: ENC[AES256_GCM,data:Cuy342Fl4oze+1+eT0tJcOMR+c8iXpJWLH74g3+MAKWlU6F1uIW7qTXAYzkXiQRKtwG0+Hfbp8xQV/Ay19c20FyfWuDl8JAse+RbP50lHeX6GqW/P4I2s2B056emmamwb71NIlS03AkVoii7n8xqkzGmJz2bS+SWLvK/INS0eGM=,iv:bVgs5Xn7vvkmTpSbDJy+ZJ2vbcaomV1qcTIUyHXmpL4=,tag:Vc0IJLA2MFh7toqlDg8xUw==,type:str]
unencrypted_suffix: _unencrypted
version: 3.11.0

View file

@ -18,68 +18,5 @@ in
email = "Danny01161013@gmail.com";
})
];
# ==== Niri ==== #
programs.niri.settings = {
input.keyboard.xkb = {
layout = "us";
options = "caps:escape";
};
workspaces."game" = { };
window-rules = [
# Wine systray
{
matches = [
{
title = "^$";
app-id = "^steam_app_(.*)$";
}
];
open-fullscreen = false;
}
# Steam Game Fullscreen
{
matches = [
{
app-id = "^steam_app_(.*)$";
is-floating = false;
}
];
open-fullscreen = true;
}
# Steam & Steam Game
{
matches = [
{ app-id = "^steam_app_*"; }
{ app-id = "^pioneergame.exe$"; }
{
app-id = "^steam$";
title = "^Steam$";
}
];
open-on-workspace = "game";
}
# Steam Dialog float
{
matches = [
{ app-id = "^steam$"; }
{ title = "(.*)(EasyAntiCheat_EOS_Setup)(.*)"; }
{
app-id = "^pioneergame.exe$";
title = "^$";
}
];
excludes = [
{
title = "^Steam$";
}
];
open-floating = true;
}
];
};
wayland.windowManager.mango.settings = ''
xkb_rules_options = caps:escape
'';
};
}

View file

@ -1,6 +0,0 @@
{
imports = [
./yubikey.nix
./common.nix
];
}

View file

@ -0,0 +1,74 @@
{
config,
lib,
self,
...
}:
let
inherit (builtins) length;
inherit (lib) getExe' optionalString;
inherit (config.systemConf) username;
serverCfg = self.nixosConfigurations.dn-server.config;
serverNextcloudCfg = serverCfg.services.nextcloud;
nextcloudURL =
(if serverNextcloudCfg.https then "https" else "http") + "://" + serverNextcloudCfg.hostName;
in
{
home-manager.users."${username}" =
{
pkgs,
config,
...
}:
let
inherit (config.home) homeDirectory;
pathToSync = [
{
target = "/Wallpapers";
source = "${homeDirectory}/Pictures/Wallpapers";
}
];
in
{
sops.secrets."netrc" = {
mode = "0700";
sopsFile = ../sops/dn-secret.yaml;
path = "${homeDirectory}/.netrc";
};
systemd.user = {
services.nextcloud-autosync = {
Unit = {
Description = "Auto sync Nextcloud";
After = "network-online.target";
};
Service = {
Type = "simple";
ExecStart = "${getExe' pkgs.nextcloud-client "nextcloudcmd"} -h -n ${
optionalString (length pathToSync > 0) "--path"
} ${toString (map (x: "${x.target} ${x.source}") pathToSync)} ${nextcloudURL}";
TimeoutStopSec = "180";
KillMode = "process";
KillSignal = "SIGINT";
};
Install.WantedBy = [ "multi-user.target" ];
};
timers.nextcloud-autosync =
let
cfg = config.systemd.user.timers.nextcloud-autosync;
in
{
Unit.Description = "Automatic async files with nextcloud when booted up after ${cfg.Timer.OnBootSec} then rerun every ${cfg.Timer.OnUnitActiveSec} ";
Timer.OnBootSec = "5min";
Timer.OnUnitActiveSec = "60min";
Install.WantedBy = [
"multi-user.target"
"timers.target"
];
};
startServices = true;
};
};
}

View file

@ -0,0 +1,9 @@
{
imports = [
../common.nix
../nextcloud-sync.nix
../yubikey.nix
../ntfy.nix
../wm.nix
];
}

View file

@ -0,0 +1,6 @@
{
imports = [
../common.nix
../yubikey.nix
];
}

View file

@ -0,0 +1,63 @@
{ config, ... }:
let
inherit (config.systemConf) username;
in
{
home-manager.users."${username}" =
{ ... }:
{
# ==== Niri ==== #
programs.niri.settings = {
input.keyboard.xkb = {
layout = "us";
options = "caps:escape";
};
workspaces."game" = { };
window-rules = [
# Steam Game Fullscreen
{
matches = [
{
app-id = "^steam_app_(.*)$";
title = "^.+$";
is-floating = false;
}
];
open-fullscreen = true;
}
# Steam & Steam Game
{
matches = [
{ app-id = "^steam_app_*"; }
{ app-id = "^pioneergame.exe$"; }
{
app-id = "^steam$";
title = "^Steam$";
}
];
open-on-workspace = "game";
}
# Steam Dialog float
{
matches = [
{ app-id = "^steam$"; }
{ title = "(.*)(EasyAntiCheat_EOS_Setup)(.*)"; }
{
app-id = "^pioneergame.exe$";
title = "^$";
}
];
excludes = [
{
title = "^Steam$";
}
];
open-floating = true;
}
];
};
wayland.windowManager.mango.settings = ''
xkb_rules_options = caps:escape
'';
};
}

View file

@ -1,5 +1,6 @@
ntfy: ENC[AES256_GCM,data:7m7hwmDWu6qP/mX7QujXPiDAmRC542CKyWzFaOL5sHza,iv:nn1F44LSFmrV2USRDD0z8CNfUhi40LZnvoU3j0nklcU=,tag:WhqQpThDaG10kNTk1tZxOQ==,type:str]
u2f_keys: ENC[AES256_GCM,data:0EofFtgar18YzbzXiT6NdC9nwMTQoYkeU8snRTwhUX2Hz+k4B46839xZet4Df5a8xpaB2CuoPvRkEMSxknBWGKkK+gZr2m+zogbpMTGQVTYqmqlnunywrhe9u9FQ5D1hwU4PYcOgDqox5dw4QMg/AUontu5BYTG3WKCCTDVIL+i6PejwXKcfoKHd9G1K2QHV33S40EM4/jjijgxW+NoO6vkEWIwxih/DxQ4YZYTHHBZXhKRD7Hwhikd6G3Vs3/xD/UOVVJKtkyn1wKNQf+O30Q2LNOhDQ8/weNfN9IAMpVtRqvEtFXA2rfp9zI7TY1iuSN9nN9hYuZJeCktvK1WiRvspU5wYn2jDtM83zCA8Udnq1XJbsGEv2aA3SYyxoldtkjFcjlupGa1lJiaANxhmpOfJp0IIkeXqnIkLE/FzRFiced58H1UV6InlH5S/Lz42854ec/jDlgvzCnDoWIsgfgQf+KmwRHznzeepPW7S3tyB/jbJETEfCJfZ3E6YmeAMWd85drTKsySjBGiM7mueb4thGstfgnAEO/Y3PuVc/qGS1j95lUc0w0zbr3VzwibxCsS02PgMIUE5gZPEllknbhh6QiqbS2AtTAb9pIwrpYfEmcZU2blofQ8WzkLEjqNnRGaDXzgIEw4OirM0tSaFGmT9Vy1XN4yvSVssjsW/wXg19U4S/6FS+zOvyg+lIkT3NOfu5dKQecz8cH0czEN5MoVj3fm5LBhFmDOawP5AAA8dLafMEepxbBIGr/9nzDP17trMfzFf78hymHTgQk/qFb6oWl9Ai1dFZRwHO7HcXpBveTpPMCaeNOjcvRrvKsm2HSzsWPCVsfX6nrmNjqyFJXpPuuNaPezclL/ApPdEXpi9Q+aVHAgjllBLAH/R8UJu71cJAo+x7TCWykG31xLO0xodtJ5Lwk3O1lMnznnQXT/fCVaFYV24OT/nS7hQOtDvlJOCfmSpZTmZxX31xF4Gt0Auok+0uPJzDfbFQH9WwifXn6F8ixdsLK/VJMEk8EZbHpkNSV6hzWJkiOeJCDl7SBKEcQ+FizYSfZuOcVEt83ScJuVa7IScVLdatnTTTpR4c5GASYLr3lahqYwhuZGcQEUIwjDXu8Oymo0Sbvnmev60wY5Q3BEMSX1iwt3QWdCe5Kzq2vEUQHP9s6lg7DgOeIA2xQRK5siqwOhw9i1qaHbPG+1yTFOx7gRu0+yBy2Qzkwsc9naD8Ce0hpwQmu4Nvpd5TjMnS51ljDMWBok5evdOtGeWL9mDz6VdxtuHbcBShmEOk+lfKKjpDeK5319veBX5ugCm8WXeDmIIhG12gI07xRVzPaeYEhnRG2pHy/+JdjlyGeh0oHCJOYPhxtwVbqXwmH83BGn3H05bdIWEjXs=,iv:pAdO+Uja/Zyf5uLMa9zbKvEMoOOjQgkqHYnEH+Bxd5k=,tag:mYngzcv0bGwVJBHOR6D4uw==,type:str]
netrc: ENC[AES256_GCM,data:UaTMV459ApE94Lg/MsbEttaBskwTgQ/UJRejFa2KjxMQ1CKF38A6BOZip/yeE/lrDy5y4WblS7Hru38ytkPGCikZIjsdn61sLMstw1RQAHs=,iv:imk+pjmPu7soPImWQQHYapy46SvYTyWj/+4gwu9I/18=,tag:VhOCAWtUd/AC/DBxuNmt8A==,type:str]
sops:
age:
- recipient: age1uvsvf5ljaezh5wze32p685kfentyle0l2mvysc67yvgct2h4850qqph9lv
@ -29,7 +30,7 @@ sops:
QWV3VjRjNC9RaXNwbDdLWmVQNS94UzAKeLZSqcXRwkVoUUKd4PuRusbJwFlubdJy
kcxGMzvfT0BMYDp61vV+F5Vh4TkgddCzp6Lphbb/6orkWWpjmE9I4g==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2025-12-09T08:03:16Z"
mac: ENC[AES256_GCM,data:6njhvipu8iUze0mmgFIWT6Neqy2xvNPB/4fW7OObHknXAh3VGAveBnigxAJmULua6HdQx4hZ2UkUrVBG8oStjCihFYJA0eBA9j9mM3rF7Piq2U98oGtw4A9Qj2PVC7Y8pOOuX25VRmDn78cw1PpwSEZL3zZ+8cqS5btHywJackY=,iv:AeRcrhhxl5v5YLNWUPx9qvGcMKHFQD/m87PJAGWa9iE=,tag:TN1KCUNa7lVWgxQ16WRijg==,type:str]
lastmodified: "2026-03-06T08:47:47Z"
mac: ENC[AES256_GCM,data:RMHOwVwL4tGKWOOOjh9OlAFnJxDGcQvgLb8vTACDAY5Mky+0+8gL1GO7hK+r0G7tbfMB4A/4CHeZtHqoXWjfhIEoDLVkkpAmckMpHVMd7bNlhvL0fkzi5YOLPgW8RCRO6VCXJM3Hb0v6N0NjcK37jdZdYJyr6DZI6aV3oY72mz0=,iv:CBAUv12RSLNY73JBZT4iHpRTLpRIm6a6mo1pz+lYEwc=,tag:l7RZNUzbZpG0Wkntl0qfLQ==,type:str]
unencrypted_suffix: _unencrypted
version: 3.11.0
version: 3.12.1

View file

@ -83,10 +83,7 @@ in
hostName = hostname;
https = https;
datadir = lib.mkIf (datadir != null) datadir;
phpExtraExtensions =
allEx: with allEx; [
imagick
];
enableImagemagick = true;
extraApps = {
inherit (config.services.nextcloud.package.packages.apps)
@ -132,6 +129,7 @@ in
"OC\\Preview\\HEIC"
"OC\\Preview\\SVG"
"OC\\Preview\\FONT"
"OC\\Preview\\Movie"
];
};
};

View file

@ -108,9 +108,40 @@ in
};
};
blur = {
passes = 3;
offset = 3;
noise = 0.02;
saturation = 1.5;
};
debug = {
honor-xdg-activation-with-invalid-serial = [ ];
};
layer-rules = [
{
matches = [
{ namespace = "^noctalia-overview*"; }
];
place-within-backdrop = true;
}
{
matches = [
{ namespace = "^noctalia-background-.*$"; }
];
background-effect = {
blur = true;
};
}
];
window-rules = [
# Global
{
background-effect = {
blur = true;
};
geometry-corner-radius =
let
round = wmCfg.border.radius + 0.0;
@ -122,9 +153,17 @@ in
top-right = round;
};
clip-to-geometry = true;
opacity = 1.0;
opacity = 0.8;
draw-border-with-background = false;
}
# non transparent
{
matches = [
{ app-id = "^(com.mitchellh.ghostty)$"; }
{ app-id = "^(zen-twilight)$"; }
];
opacity = 1.0;
}
# Float
{
matches = [

View file

@ -54,7 +54,22 @@ lib.checkListOfEnum "Nvidia Prime Mode" validModes [ nvidia-mode ] {
nvidia.nvidiaSettings = true;
nvidia.dynamicBoost.enable = true;
nvidia.package = config.boot.kernelPackages.nvidiaPackages.latest;
nvidia.package =
let
base = config.boot.kernelPackages.nvidiaPackages.latest;
cachyos-nvidia-patch = pkgs.fetchpatch {
url = "https://raw.githubusercontent.com/CachyOS/CachyOS-PKGBUILDS/master/nvidia/nvidia-utils/kernel-6.19.patch";
sha256 = "sha256-YuJjSUXE6jYSuZySYGnWSNG5sfVei7vvxDcHx3K+IN4=";
};
driverAttr = if config.hardware.nvidia.open then "open" else "bin";
in
base
// {
${driverAttr} = base.${driverAttr}.overrideAttrs (oldAttrs: {
patches = (oldAttrs.patches or [ ]) ++ [ cachyos-nvidia-patch ];
});
};
nvidia.prime =
(

View file

@ -25,5 +25,5 @@ in
];
# Disable man cache
documentation.man.generateCaches = mkForce false;
documentation.man.cache.enable = mkForce false;
}

View file

@ -130,6 +130,15 @@ in
id = "NotificationHistory";
showUnreadBadge = true;
}
{
deviceNativePath = "__default__";
displayMode = "graphic";
hideIfIdle = false;
hideIfNotDetected = true;
id = "Battery";
showNoctaliaPerformance = true;
showPowerProfiles = true;
}
{
colorizeDistroLogo = false;
colorizeSystemIcon = "primary";

View file

@ -59,6 +59,7 @@ in
programs.noctalia-shell = {
enable = true;
systemd.enable = true;
colors = mkForce { };
settings = {
settingsVersion = 26;
appLauncher = {
@ -126,7 +127,7 @@ in
};
controlCenter = import ./controlCenter.nix;
dock = {
backgroundOpacity = 1.0;
backgroundOpacity = mkForce 1.0;
colorizeIcons = false;
displayMode = "auto_hide";
enabled = false;
@ -159,6 +160,8 @@ in
shadowOffsetY = 3;
showHibernateOnLockScreen = false;
showScreenCorners = true;
lockScreenAnimation = true;
lockScreenCountdownDuration = 3000;
};
hooks = {
enabled = false;
@ -190,7 +193,8 @@ in
manualSunset = "18:30";
};
notifications = {
backgroundOpacity = 1.0;
enableMarkdown = true;
backgroundOpacity = mkForce 1.00;
criticalUrgencyDuration = 15;
enableKeyboardLayoutToast = true;
enabled = true;
@ -204,7 +208,7 @@ in
};
osd = {
autoHideMs = 1500;
backgroundOpacity = 1.0;
backgroundOpacity = mkForce 0.55;
enabled = true;
enabledTypes = [
0
@ -249,7 +253,7 @@ in
hideWallpaperFilenames = true;
monitorDirectories = [
];
overviewEnabled = false;
overviewEnabled = true;
panelPosition = "follow_bar";
randomEnabled = false;
randomIntervalSec = 300;

View file

@ -1,5 +1,5 @@
{
countdownDuration = 10000;
countdownDuration = 3000;
enableCountdown = true;
position = "bottom_center";
powerOptions = [

View file

@ -12,6 +12,18 @@ in
};
};
home-manager.sharedModules = [
{
sops = {
defaultSopsFile = defaultSopsFile;
age = {
keyFile = ageKeyFile;
};
};
}
];
environment.variables = {
SOPS_AGE_KEY_FILE = ageKeyFile;
};

View file

@ -1,7 +1,7 @@
{ pkgs, ... }:
{
environment.systemPackages = with pkgs; [
wineWowPackages.waylandFull # 32-bit & 64-bit
wineWow64Packages.waylandFull
winetricks
];
}