Add Noctalia plugins config and disable defaults
Introduce `nooctalia-plugins` options to control nightly‑shell plugins and make their activation conditional. Update host home‑modules to enable a subset of plugins (keybind‑cheatsheet, kde‑connect, screenshot, ntfy) on desktop and laptop configurations. Disable numerous default applications and system services (e.g., Zed, browsers, Docker, Flatpak, calendar, GameMode, Steam, media tools, communication apps) in the default host configuration.
This commit is contained in:
1 parent
2c13658e89
commit
01e84a3561
5 files changed
+101
-48
No files matched your search
@@ -1,7 +1,21 @@
|
||||
{lib, ...}: let
|
||||
{
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: let
|
||||
sourceUrl = "https://github.com/noctalia-dev/noctalia-plugins";
|
||||
in {
|
||||
programs.noctalia-shell = lib.mkForce {
|
||||
options.nooctalia-plugins = {
|
||||
mini-docker.enable = lib.mkEnableOption "Mini docker plugin";
|
||||
timer.enable = lib.mkEnableOption "Timer plugin";
|
||||
keybind-cheatsheet.enable = lib.mkEnableOption "Keybind cheatsheet plugin";
|
||||
kde-connect.enable = lib.mkEnableOption "KDE Connect plugin";
|
||||
screen-recorder.enable = lib.mkEnableOption "Screen-recorder plugin";
|
||||
screenshot.enable = lib.mkEnableOption "Screenshot plugin";
|
||||
ntfy-notifications.enable = lib.mkEnableOption "ntfy notifications plugin";
|
||||
};
|
||||
|
||||
config.programs.noctalia-shell = lib.mkForce {
|
||||
plugins = {
|
||||
sources = [
|
||||
{
|
||||
@@ -11,31 +25,31 @@ in {
|
||||
}
|
||||
];
|
||||
states = {
|
||||
mini-docker = {
|
||||
mini-docker = lib.mkIf config.nooctalia-plugins.mini-docker.enable {
|
||||
enabled = true;
|
||||
sourceUrl = sourceUrl;
|
||||
};
|
||||
timer = {
|
||||
timer = lib.mkIf config.nooctalia-plugins.timer.enable {
|
||||
enabled = true;
|
||||
sourceUrl = sourceUrl;
|
||||
};
|
||||
keybind-cheatsheet = {
|
||||
keybind-cheatsheet = lib.mkIf config.nooctalia-plugins.keybind-cheatsheet.enable {
|
||||
enabled = true;
|
||||
sourceUrl = sourceUrl;
|
||||
};
|
||||
kde-connect = {
|
||||
kde-connect = lib.mkIf config.nooctalia-plugins.kde-connect.enable {
|
||||
enabled = true;
|
||||
sourceUrl = sourceUrl;
|
||||
};
|
||||
screen-recorder = {
|
||||
screen-recorder = lib.mkIf config.nooctalia-plugins.screen-recorder.enable {
|
||||
enabled = true;
|
||||
sourceUrl = sourceUrl;
|
||||
};
|
||||
screenshot = {
|
||||
screenshot = lib.mkIf config.nooctalia-plugins.screenshot.enable {
|
||||
enabled = true;
|
||||
sourceUrl = sourceUrl;
|
||||
};
|
||||
ntfy-notifications = {
|
||||
ntfy-notifications = lib.mkIf config.nooctalia-plugins.ntfy-notifications.enable {
|
||||
enabled = true;
|
||||
sourceUrl = sourceUrl;
|
||||
};
|
||||
|
||||
Reference in new issue
Block a user