Commit 3bf52cd
Changed files (37)
modules
desktop
apps
deadbeef
rclone
terminal
thunderbird
input-method
hosts
kevin
users
hpcesia
modules/desktop/apps/browser/_firefox.nix
@@ -1,5 +1,5 @@
{lib, ...}: {
- flake.modules.homeManager.desktop = {
+ den.aspects.desktop.provides.app.homeManager = {
pkgs,
osConfig,
...
modules/desktop/apps/browser/chromium.nix
@@ -1,5 +1,5 @@
{lib, ...}: {
- flake.modules.homeManager.desktop = {
+ den.aspects.desktop.provides.app.homeManager = {
pkgs,
osConfig,
...
modules/desktop/apps/browser/floorp.nix
@@ -1,5 +1,5 @@
{lib, ...}: {
- flake.modules.homeManager.desktop = {
+ den.aspects.desktop.provides.app.homeManager = {
pkgs,
osConfig,
...
modules/desktop/apps/browser/xdg.nix
@@ -1,5 +1,5 @@
{
- flake.modules.homeManager.desktop = _: {
+ den.aspects.desktop.provides.app.homeManager = _: {
xdg.mimeApps.defaultApplications = let
browser = ["floorp.desktop"];
in {
modules/desktop/apps/deadbeef/config.nix
@@ -1,11 +1,11 @@
{lib, ...}: {
- flake.modules.nixos.desktop = {pkgs, ...}: {
+ den.aspects.desktop.provides.app.nixos = {pkgs, ...}: {
environment.plasma6.excludePackages = with pkgs.kdePackages; [
elisa # Using deadbeef instead.
];
};
- flake.modules.homeManager.desktop = {pkgs, ...}: {
+ den.aspects.desktop.provides.app.homeManager = {pkgs, ...}: {
programs.deadbeef =
lib.mkIf
pkgs.stdenv.hostPlatform.isLinux
modules/desktop/apps/deadbeef/option.nix
@@ -1,5 +1,5 @@
{lib, ...}: {
- flake.modules.homeManager.desktop = {
+ den.aspects.desktop.provides.app.homeManager = {
config,
pkgs,
...
modules/desktop/apps/rclone/default.nix
@@ -1,12 +1,12 @@
{
- flake.modules.nixos.desktop = _: {
+ den.aspects.desktop.provides.app.nixos = _: {
vaultix.secrets.rclone-onedrive-token = {
file = ./onedrive-token.age;
owner = "hpcesia";
};
};
- flake.modules.homeManager.desktop = {
+ den.aspects.desktop.provides.app.homeManager = {
osConfig,
config,
...
modules/desktop/apps/terminal/wezterm/default.nix
@@ -1,5 +1,5 @@
{
- flake.modules.homeManager.terminal-wezterm = _: {
+ den.aspects.desktop.provides.terminal.provides.wezterm.homeManager = _: {
programs.wezterm = {
enable = true;
};
modules/desktop/apps/terminal/default.nix
@@ -1,5 +1,5 @@
-{config, ...}: {
- flake.modules.nixos.desktop = {pkgs, ...}: {
+{
+ den.aspects.desktop.provides.terminal.nixos = {pkgs, ...}: {
# add user's shell into /etc/shells
environment.shells = with pkgs; [
bashInteractive
@@ -14,18 +14,4 @@
# fix for `sudo xxx` in kitty/wezterm/foot and other modern terminal emulators
security.sudo.keepTerminfo = true;
};
- flake.modules.homeManager.desktop = _: {
- imports = with config.flake.modules.homeManager; [
- terminal-foot
- terminal-ghostty
- # terminal-wezterm
- ];
-
- xdg.terminal-exec = {
- enable = true;
- settings = {
- default = ["com.mitchellh.ghostty.desktop"];
- };
- };
- };
}
modules/desktop/apps/terminal/foot.nix
@@ -1,5 +1,5 @@
{
- flake.modules.homeManager.terminal-foot = _: {
+ den.aspects.desktop.provides.terminal.provides.foot.homeManager = {
programs.foot = {
enable = true;
settings = {
modules/desktop/apps/terminal/ghostty.nix
@@ -1,5 +1,5 @@
{lib, ...}: {
- flake.modules.homeManager.terminal-ghostty = {osConfig, ...}: {
+ den.aspects.desktop.provides.terminal.provides.ghostty.homeManager = {osConfig, ...}: {
programs.ghostty = {
enable = true;
enableBashIntegration = true;
@@ -23,4 +23,13 @@
};
};
};
+
+ den.aspects.desktop.provides.terminal.provides.ghostty.provides.xdg-term-exec.homeManager = {
+ xdg.terminal-exec = {
+ enable = true;
+ settings = {
+ default = ["com.mitchellh.ghostty.desktop"];
+ };
+ };
+ };
}
modules/desktop/apps/thunderbird/bird-tray.nix
@@ -1,5 +1,5 @@
{lib, ...}: {
- flake.modules.homeManager.desktop = {
+ den.aspects.desktop.provides.app.homeManager = {
pkgs,
config,
osConfig,
modules/desktop/apps/thunderbird/default.nix
@@ -1,11 +1,11 @@
{lib, ...}: {
- flake.modules.nixos.desktop = {pkgs, ...}: {
+ den.aspects.desktop.provides.app.nixos = {pkgs, ...}: {
environment.plasma6.excludePackages = with pkgs.kdePackages; [
kdepim-runtime # No needed if using Thunderbird.
];
};
- flake.modules.homeManager.desktop = {pkgs, ...}: {
+ den.aspects.desktop.provides.app.homeManager = {pkgs, ...}: {
programs.thunderbird = {
enable = true;
package = lib.mkDefault pkgs.thunderbird-bin;
modules/desktop/apps/btop.nix
@@ -1,5 +1,5 @@
{
- flake.modules.homeManager.desktop = _: {
+ den.aspects.desktop.provides.app.homeManager = _: {
# Enable btop in home-manager to auto apply stylix's theme
# Btop is also a system package in modules/core/tools/packages.nix
programs.btop = {
modules/desktop/apps/cava.nix
@@ -1,5 +1,5 @@
{
- flake.modules.homeManager.desktop = _: {
+ den.aspects.desktop.provides.app.homeManager = _: {
programs.cava = {
enable = true;
settings = {
modules/desktop/apps/flatpak.nix
@@ -1,11 +1,11 @@
{inputs, ...}: {
flake-file.inputs.flatpaks.url = "github:in-a-dil-emma/declarative-flatpak/latest";
- flake.modules.nixos.desktop = _: {
+ den.aspects.desktop.provides.app.nixos = _: {
services.flatpak.enable = true;
};
- flake.modules.homeManager.desktop = _: {
+ den.aspects.desktop.provides.app.homeManager = _: {
imports = [inputs.flatpaks.homeModules.default];
services.flatpak = {
modules/desktop/apps/kdeconnect.nix
@@ -1,5 +1,5 @@
{
- flake.modules.nixos.desktop = _: {
+ den.aspects.desktop.provides.app.nixos = _: {
networking.firewall = {
allowedTCPPortRanges = [
{
@@ -16,7 +16,7 @@
};
};
- flake.modules.homeManager.desktop = {osConfig, ...}: let
+ den.aspects.desktop.provides.app.homeManager = {osConfig, ...}: let
isPlasma = osConfig.services.desktopManager.plasma6.enable;
isNoctalia = osConfig.services.noctalia-shell.enable or false;
in {
modules/desktop/apps/loupe.nix
@@ -1,11 +1,11 @@
{
- flake.modules.nixos.desktop = {pkgs, ...}: {
+ den.aspects.desktop.provides.app.nixos = {pkgs, ...}: {
environment.plasma6.excludePackages = with pkgs.kdePackages; [
gwenview # KDE's default image viewer
];
};
- flake.modules.homeManager.desktop = {pkgs, ...}: {
+ den.aspects.desktop.provides.app.homeManager = {pkgs, ...}: {
home.packages = [pkgs.loupe];
xdg.mimeApps.defaultApplications = {
modules/desktop/apps/mpd.nix
@@ -1,5 +1,5 @@
{lib, ...}: {
- flake.modules.homeManager.desktop = {config, ...}: {
+ den.aspects.desktop.provides.app.homeManager = {config, ...}: {
services.mpd = {
enable = true;
network.startWhenNeeded = true;
modules/desktop/apps/mpv.nix
@@ -1,5 +1,5 @@
{
- flake.modules.homeManager.desktop = {pkgs, ...}: {
+ den.aspects.desktop.provides.app.homeManager = {pkgs, ...}: {
programs.mpv = {
enable = true;
defaultProfiles = ["gpu-hq"];
modules/desktop/apps/onlyoffice.nix
@@ -1,5 +1,5 @@
{
- flake.modules.homeManager.desktop = _: {
+ den.aspects.desktop.provides.app.homeManager = _: {
programs.onlyoffice = {
enable = true;
};
modules/desktop/apps/packages.nix
@@ -1,5 +1,5 @@
{lib, ...}: {
- flake.modules.homeManager.desktop = {
+ den.aspects.desktop.provides.app.homeManager = {
pkgs,
osConfig,
...
modules/desktop/apps/rmpc.nix
@@ -1,5 +1,5 @@
{
- flake.modules.homeManager.desktop = {config, ...}: {
+ den.aspects.desktop.provides.app.homeManager = {config, ...}: {
# Require MPD
programs.rmpc = {
enable = true;
modules/desktop/apps/syncthing.nix
@@ -1,5 +1,5 @@
{
- flake.modules.homeManager.desktop = _: {
+ den.aspects.desktop.provides.app.homeManager = _: {
services.syncthing = {
enable = true;
guiAddress = "127.0.0.1:4074";
modules/desktop/apps/telegram.nix
@@ -1,5 +1,5 @@
{
- flake.modules.homeManager.desktop = {pkgs, ...}: {
+ den.aspects.desktop.provides.app.homeManager = {pkgs, ...}: {
home.packages = [pkgs.telegram-desktop];
xdg = {
modules/desktop/input-method/fcitx5/default.nix
@@ -1,5 +1,5 @@
{lib, ...}: {
- flake.modules.homeManager.desktop = {pkgs, ...}: let
+ den.aspects.desktop.provides.input-method.provides.fcitx5.homeManager = {pkgs, ...}: let
fcitx5-rime = pkgs.fcitx5-rime.override {
rimeDataPkgs = [pkgs.nur.repos.xddxdd.rime-ice];
};
modules/desktop/input-method/fcitx5/plasma.nix
@@ -1,5 +1,5 @@
{lib, ...}: {
- flake.modules.homeManager.desktop = {osConfig, ...}: let
+ den.aspects.desktop.provides.input-method.provides.fcitx5.homeManager = {osConfig, ...}: let
hasPlasma = osConfig.services.desktopManager.plasma6.enable;
in
lib.optionalAttrs hasPlasma {
modules/desktop/input-method/default.nix
@@ -0,0 +1,7 @@
+{den, ...}: {
+ den.aspects.desktop.includes = [den.aspects.desktop._.input-method];
+
+ den.aspects.desktop.provides.input-method.includes = [
+ den.aspects.desktop._.input-method._.fcitx5
+ ];
+}
modules/desktop/cursor.nix
@@ -1,5 +1,7 @@
-{
- flake.modules.nixos.desktop = {pkgs, ...}: {
+{den, ...}: {
+ den.aspects.desktop.includes = [den.aspects.desktop._.cursor];
+
+ den.aspects.desktop.provides.cursor.nixos = {pkgs, ...}: {
stylix.cursor = {
name = "Bibata-Modern-Classic";
package = pkgs.bibata-cursors;
modules/desktop/icon-theme.nix
@@ -1,5 +1,7 @@
-{
- flake.modules.nixos.desktop = {pkgs, ...}: {
+{den, ...}: {
+ den.aspects.desktop.includes = [den.aspects.desktop._.icon-theme];
+
+ den.aspects.desktop.provides.icon-theme.nixos = {pkgs, ...}: {
stylix.icons = let
whitesur-icon-theme = pkgs.whitesur-icon-theme.override {
boldPanelIcons = true;
@@ -13,7 +15,7 @@
};
};
- flake.modules.homeManager.desktop = {osConfig, ...}: {
+ den.aspects.desktop.provides.icon-theme.homeManager = {osConfig, ...}: {
stylix.icons = osConfig.stylix.icons;
};
}
modules/desktop/pipewire.nix
@@ -1,5 +1,7 @@
-{
- flake.modules.nixos.desktop = {pkgs, ...}: {
+{den, ...}: {
+ den.aspects.desktop.includes = [den.aspects.desktop._.pipewire];
+
+ den.aspects.desktop.provides.pipewire.nixos = {pkgs, ...}: {
environment.systemPackages = with pkgs; [
pulseaudio # provides `pactl`, which is required by some apps(e.g. sonic-pi)
];
modules/desktop/power-management.nix
@@ -1,5 +1,7 @@
-{
- flake.modules.nixos.desktop = {pkgs, ...}: {
+{den, ...}: {
+ den.aspects.desktop.includes = [den.aspects.desktop._.power-management];
+
+ den.aspects.desktop.provides.power-management.nixos = {pkgs, ...}: {
services = {
tlp = {
enable = true;
modules/desktop/thumbnail.nix
@@ -1,5 +1,7 @@
-{
- flake.modules.nixos.desktop = {pkgs, ...}: {
+{den, ...}: {
+ den.aspects.desktop.includes = [den.aspects.desktop._.thumbnail];
+
+ den.aspects.desktop.provides.thumbnail.nixos = {pkgs, ...}: {
services.tumbler.enable = true; # Thumbnail support
environment.systemPackages = with pkgs; [
# Image
modules/desktop/utils.nix
@@ -1,12 +1,12 @@
{lib, ...}: {
- flake.modules.nixos.desktop = {config, ...}: {
+ den.aspects.desktop.nixos = {config, ...}: {
services.gvfs.enable = true; # Mount, trash, and other functionalities
services.xserver.xkb.layout = "us";
services.blueman.enable = config.hardware.bluetooth.enable;
i18n.extraLocales = "all";
};
- flake.modules.homeManager.desktop = {config, ...}: {
+ den.aspects.desktop.homeManager = {config, ...}: {
# Fix some QT applications not following the color scheme, such as KDE Connect.
# See https://github.com/nix-community/stylix/issues/1958#issuecomment-3607824025
xdg.configFile.kdeglobals.source = let
modules/desktop/xdg.nix
@@ -1,5 +1,5 @@
{
- flake.modules.homeManager.desktop = {
+ den.aspects.desktop.provides.xdg.homeManager = {
config,
pkgs,
...
modules/hosts/kevin/default.nix
@@ -31,9 +31,11 @@ in {
den.aspects.kevin.includes = [
<desktop/fonts>
<desktop/kmscon>
+ <desktop/terminal>
];
den.aspects.kevin.provides.to-users.includes = [
+ <desktop>
<desktop/de/custom>
<desktop/de/custom/wm/niri>
<desktop/de/custom/shell/noctalia>
@@ -47,20 +49,4 @@ in {
isDesktop = true;
isLaptop = true;
};
-
- den.aspects.kevin.nixos = {
- imports =
- (with config.flake.modules.nixos; [
- desktop
- ])
- ++ [
- {
- home-manager.users.hpcesia = {
- imports = with config.flake.modules.homeManager; [
- desktop
- ];
- };
- }
- ];
- };
}
modules/users/hpcesia/default.nix
@@ -21,6 +21,10 @@ in {
<dev>
])
++ (lib.optionals isGraphic [
+ <desktop/app>
+ <desktop/terminal/ghostty>
+ <desktop/terminal/ghostty/xdg-term-exec>
+ <desktop/xdg>
<game>
])
++ (lib.optionals (isDevelop && isGraphic) [