aboutsummaryrefslogtreecommitdiff
path: root/home/programs/desktop/noctalia.nix
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--home/programs/desktop/noctalia.nix243
1 files changed, 243 insertions, 0 deletions
diff --git a/home/programs/desktop/noctalia.nix b/home/programs/desktop/noctalia.nix
new file mode 100644
index 0000000..db8095c
--- /dev/null
+++ b/home/programs/desktop/noctalia.nix
@@ -0,0 +1,243 @@
+{
+ pkgs,
+ inputs,
+ config,
+ ...
+}:
+let
+ inherit (config.home) homeDirectory;
+ noctalia = "${inputs.noctalia.packages.${pkgs.system}.default}/bin/noctalia-shell";
+in
+{
+ home.packages = [
+ pkgs.matugen
+ ];
+
+ systemd.user.services.noctalia = {
+ Unit.Description = "Noctalia Wayland Shell";
+ Unit.PartOf = "graphical-session.target";
+ Unit.After = "graphical-session.target";
+ Unit.ConditionEnvironment = "WAYLAND_DISPLAY";
+ Install.WantedBy = [ "graphical-session.target" ];
+ Service.ExecStart = noctalia;
+ };
+
+ programs.noctalia-shell = {
+ enable = true;
+ settings = {
+ settingsVersion = 15;
+ bar = {
+ position = "top";
+ backgroundOpacity = 0.9;
+ monitors = [ ];
+ density = "comfortable";
+ showCapsule = true;
+ floating = false;
+ marginVertical = 0.25;
+ marginHorizontal = 0.25;
+ widgets = {
+ left = [
+ {
+ id = "SystemMonitor";
+ }
+ {
+ id = "ActiveWindow";
+ }
+ {
+ id = "MediaMini";
+ }
+ ];
+ center = [
+ {
+ id = "Workspace";
+ }
+ ];
+ right = [
+ {
+ id = "KeepAwake";
+ }
+ {
+ id = "ScreenRecorder";
+ }
+ {
+ id = "Tray";
+ }
+ {
+ id = "NotificationHistory";
+ }
+ {
+ id = "WiFi";
+ }
+ {
+ id = "Bluetooth";
+ }
+ {
+ id = "Battery";
+ }
+ {
+ id = "Volume";
+ }
+ {
+ id = "Brightness";
+ }
+ {
+ id = "Clock";
+ }
+ {
+ id = "ControlCenter";
+ }
+ ];
+ };
+ };
+
+ general = {
+ dimDesktop = true;
+ showScreenCorners = true;
+ forceBlackScreenCorners = false;
+ radiusRatio = 1;
+ screenRadiusRatio = 1;
+ animationSpeed = 1.1;
+ animationDisabled = false;
+ };
+
+ location = {
+ name = "Los Angeles";
+ useFahrenheit = false;
+ use12hourFormat = false;
+ showWeekNumberInCalendar = true;
+ };
+
+ screenRecorder = {
+ directory = "/home/fcuny/Videos";
+ frameRate = 60;
+ audioCodec = "opus";
+ videoCodec = "h264";
+ quality = "very_high";
+ colorRange = "limited";
+ showCursor = true;
+ audioSource = "default_output";
+ videoSource = "portal";
+ };
+
+ wallpaper = {
+ enabled = true;
+ directory = "${homeDirectory}/Sync/wallpapers";
+ enableMultiMonitorDirectories = false;
+ setWallpaperOnAllMonitors = true;
+ defaultWallpaper = "";
+ fillMode = "crop";
+ fillColor = "#000000";
+ randomEnabled = true;
+ randomIntervalSec = 300;
+ transitionDuration = 1500;
+ transitionType = "random";
+ transitionEdgeSmoothness = 0.05;
+ monitors = [ ];
+ };
+
+ appLauncher = {
+ enableClipboardHistory = true;
+ position = "center";
+ backgroundOpacity = 1;
+ pinnedExecs = [ ];
+ useApp2Unit = false;
+ sortByMostUsed = true;
+ terminalCommand = "kitty";
+ };
+
+ controlCenter = {
+ position = "close_to_bar_button";
+ };
+
+ dock = {
+ enabled = false;
+ displayMode = "always_visible";
+ backgroundOpacity = 1;
+ floatingRatio = 1;
+ onlySameOutput = true;
+ monitors = [ ];
+ pinnedApps = [ ];
+ };
+
+ network = {
+ wifiEnabled = true;
+ };
+
+ notifications = {
+ doNotDisturb = false;
+ monitors = [ ];
+ location = "top_right";
+ alwaysOnTop = true;
+ lastSeenTs = 0;
+ respectExpireTimeout = false;
+ lowUrgencyDuration = 3;
+ normalUrgencyDuration = 8;
+ criticalUrgencyDuration = 15;
+ };
+
+ osd = {
+ enabled = true;
+ location = "top_right";
+ monitors = [ ];
+ autoHideMs = 2000;
+ };
+
+ audio = {
+ volumeStep = 5;
+ volumeOverdrive = false;
+ cavaFrameRate = 60;
+ visualizerType = "linear";
+ mprisBlacklist = [ ];
+ preferredPlayer = "";
+ };
+
+ ui = {
+ fontDefault = "Roboto";
+ fontFixed = "DejaVu Sans Mono";
+ fontDefaultScale = 1;
+ fontFixedScale = 1;
+ monitorsScaling = [ ];
+ idleInhibitorEnabled = false;
+ tooltipsEnabled = true;
+ };
+
+ brightness = {
+ brightnessStep = 5;
+ };
+
+ colorSchemes = {
+ useWallpaperColors = true;
+ predefinedScheme = "Noctalia (default)";
+ darkMode = true;
+ matugenSchemeType = "scheme-expressive";
+ generateTemplatesForPredefined = true;
+ };
+
+ templates = {
+ gtk = false;
+ qt = false;
+ kitty = false;
+ ghostty = false;
+ foot = false;
+ fuzzel = false;
+ vesktop = false;
+ pywalfox = false;
+ enableUserTemplates = false;
+ };
+
+ nightLight = {
+ enabled = true;
+ forced = false;
+ autoSchedule = true;
+ nightTemp = "4000";
+ dayTemp = "6500";
+ };
+
+ hooks = {
+ enabled = false;
+ wallpaperChange = "";
+ darkModeChange = "";
+ };
+ };
+ };
+}