From 48f537ac84c26cc77feaea9fbf05a05e250ffed6 Mon Sep 17 00:00:00 2001 From: bokicoder <1556588440@qq.com> Date: Wed, 5 Nov 2025 02:01:20 +0800 Subject: [PATCH 1/4] i18n: Improve Chinese translation --- Assets/Translations/zh-CN.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Assets/Translations/zh-CN.json b/Assets/Translations/zh-CN.json index 2ac08e2c..333fb714 100644 --- a/Assets/Translations/zh-CN.json +++ b/Assets/Translations/zh-CN.json @@ -613,7 +613,7 @@ } }, "session-menu": { - "action-in-seconds": "在 {seconds} 后将 {action}...", + "action-in-seconds": "在 {seconds} 秒后将{action}...", "lock": "锁定", "lock-and-suspend": "锁定并挂起", "logout": "注销", @@ -1335,7 +1335,7 @@ }, "respect-expire": { "description": "使用通知中设置的过期超时。", - "label": "启用过期超时" + "label": "尊重过期超时" }, "section": { "description": "根据紧急级别配置通知保持可见的时间。", @@ -1593,7 +1593,7 @@ "select-monitor-folder": "选择显示器壁纸文件夹", "selector-position": { "description": "选择壁纸选择面板的显示位置。", - "label": "显示位置" + "label": "选择器位置" } }, "title": "壁纸" From 7b634783ae24c5007c60b7df544c3248aa9bed22 Mon Sep 17 00:00:00 2001 From: wxlyyy <1556588440@qq.com> Date: Fri, 31 Oct 2025 13:22:21 +0800 Subject: [PATCH 2/4] Nix: add systemd service to home-module --- nix/home-module.nix | 34 ++++++++++++++++++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) diff --git a/nix/home-module.nix b/nix/home-module.nix index 713c8f65..15e797db 100644 --- a/nix/home-module.nix +++ b/nix/home-module.nix @@ -16,6 +16,8 @@ in { options.programs.noctalia-shell = { enable = lib.mkEnableOption "Noctalia shell configuration"; + systemd.enable = lib.mkEnableOption "Noctalia shell systemd integration"; + package = lib.mkOption { type = lib.types.nullOr lib.types.package; description = "The noctalia-shell package to use"; @@ -103,18 +105,46 @@ in { useApp2Unit = cfg.settings.appLauncher.useApp2Unit or false; in lib.mkIf cfg.enable { + systemd.user.services.noctalia-shell = lib.mkIf cfg.systemd.enable { + Unit = { + Description = "Noctalia Shell - Wayland desktop shell"; + Documentation = "https://docs.noctalia.dev/docs"; + PartOf = [ config.wayland.systemd.target ]; + After = [ config.wayland.systemd.target ]; + X-Restart-Triggers = [ "${config.xdg.configFile."noctalia/settings.json".source}" ] + ++ lib.optional (cfg.colors != { }) "${config.xdg.configFile."noctalia/colors.json".source}"; + }; + + Service = { + ExecStart = lib.getExe cfg.package; + Restart = "on-failure"; + Environment = [ + "NOCTALIA_SETTINGS_FALLBACK=%h/.config/noctalia/gui-settings.json" + ]; + }; + + Install.WantedBy = [ config.wayland.systemd.target ]; + }; + home.packages = lib.optional useApp2Unit cfg.app2unit.package ++ lib.optional (cfg.package != null) cfg.package; xdg.configFile = { "noctalia/settings.json" = { - onChange = restart; + onChange = lib.mkIf (!cfg.systemd.enable) restart; text = builtins.toJSON cfg.settings; }; "noctalia/colors.json" = lib.mkIf (cfg.colors != {}) { - onChange = restart; + onChange = lib.mkIf (!cfg.systemd.enable) restart; text = builtins.toJSON cfg.colors; }; }; + + assertions = [ + { + assertion = !cfg.systemd.enable || cfg.package != null; + message = "noctalia-shell: The package option must not be null when systemd service is enabled."; + } + ]; }; } From f04698e7f109feb4089050f1c71a7f39edbbb83a Mon Sep 17 00:00:00 2001 From: wxlyyy <1556588440@qq.com> Date: Tue, 4 Nov 2025 17:27:54 +0800 Subject: [PATCH 3/4] Nix: improve home-module --- nix/home-module.nix | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/nix/home-module.nix b/nix/home-module.nix index 15e797db..c27e6725 100644 --- a/nix/home-module.nix +++ b/nix/home-module.nix @@ -25,13 +25,13 @@ in { settings = lib.mkOption { type = with lib.types; - nullOr (oneOf [ + oneOf [ attrs str path - ]); + ]; default = {}; - apply = x: lib.recursiveUpdate defaultSettings (extractAttrs x); + apply = x: if x == {} then x else lib.recursiveUpdate defaultSettings (extractAttrs x); example = lib.literalExpression '' { bar = { @@ -111,8 +111,9 @@ in { Documentation = "https://docs.noctalia.dev/docs"; PartOf = [ config.wayland.systemd.target ]; After = [ config.wayland.systemd.target ]; - X-Restart-Triggers = [ "${config.xdg.configFile."noctalia/settings.json".source}" ] - ++ lib.optional (cfg.colors != { }) "${config.xdg.configFile."noctalia/colors.json".source}"; + X-Restart-Triggers = + lib.optional (cfg.settings != {}) "${config.xdg.configFile."noctalia/settings.json".source}" + ++ lib.optional (cfg.colors != {}) "${config.xdg.configFile."noctalia/colors.json".source}"; }; Service = { @@ -126,11 +127,12 @@ in { Install.WantedBy = [ config.wayland.systemd.target ]; }; - home.packages = lib.optional useApp2Unit cfg.app2unit.package + home.packages = + lib.optional useApp2Unit cfg.app2unit.package ++ lib.optional (cfg.package != null) cfg.package; xdg.configFile = { - "noctalia/settings.json" = { + "noctalia/settings.json" = lib.mkIf (cfg.settings != {}) { onChange = lib.mkIf (!cfg.systemd.enable) restart; text = builtins.toJSON cfg.settings; }; From af9c528a6f89f235f57c54fcc8f03bcf08c91365 Mon Sep 17 00:00:00 2001 From: Lysec <52084453+Ly-sec@users.noreply.github.com> Date: Thu, 6 Nov 2025 11:23:09 +0100 Subject: [PATCH 4/4] README: add Raine to supporters <3 --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 0480a3c9..2a47a5b2 100644 --- a/README.md +++ b/README.md @@ -101,6 +101,7 @@ While all donations are greatly appreciated, they are completely voluntary. * Nyxion ツ * MrDowntempo * Tempus Thales +* Raine ---