refactor *started*
This commit is contained in:
parent
d0413cb830
commit
db2103a37d
103 changed files with 1008 additions and 786 deletions
12
home/apps/terminal/default.nix
Normal file
12
home/apps/terminal/default.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./kitty.nix
|
||||
];
|
||||
}
|
||||
75
home/apps/terminal/kitty.nix
Normal file
75
home/apps/terminal/kitty.nix
Normal file
|
|
@ -0,0 +1,75 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
config = lib.mkIf osConfig.apps.terminal.kitty.enable {
|
||||
programs = {
|
||||
kitty = {
|
||||
enable = true;
|
||||
enableGitIntegration = true;
|
||||
shellIntegration = {
|
||||
enableFishIntegration = true;
|
||||
enableBashIntegration = true;
|
||||
enableZshIntegration = true;
|
||||
};
|
||||
font = {
|
||||
name = "FiraCode Nerd Font";
|
||||
size = 16;
|
||||
package = pkgs.nerd-fonts.fira-code;
|
||||
};
|
||||
settings = {
|
||||
include = "themes/noctalia.conf";
|
||||
wayland_titlebar_color = "system";
|
||||
macos_titlebar_color = "system";
|
||||
# The most important setting of the whole confiG
|
||||
|
||||
confirm_os_window_close = 0;
|
||||
|
||||
# Cursor
|
||||
|
||||
cursor_shape = "underline";
|
||||
|
||||
# Scrollback
|
||||
|
||||
scrollback_lines = 10000;
|
||||
|
||||
# Link Behaviour
|
||||
|
||||
url_style = "straight";
|
||||
open_url_with = "default";
|
||||
|
||||
# Layouts
|
||||
|
||||
remember_window_size = "no";
|
||||
enabled_layouts = "splits, tall";
|
||||
window_resize_step_cells = 3;
|
||||
window_resize_step_lines = 3;
|
||||
window_border_width = "3 pt";
|
||||
draw_minimal_borders = "yes";
|
||||
window_margin_width = 10;
|
||||
window_padding_width = 10;
|
||||
|
||||
# Borders/Appearance
|
||||
|
||||
inactive_text_alpha = 0.5;
|
||||
hide_window_decorations = "no";
|
||||
|
||||
# tab bar
|
||||
|
||||
tab_bar_min_tabs = 1;
|
||||
tab_bar_edge = "bottom";
|
||||
tab_bar_style = "powerline";
|
||||
tab_powerline_style = "slanted";
|
||||
tab_title_template = "{title}{' :{}:'.format(num_windows) if num_windows > 1 else ''}";
|
||||
};
|
||||
};
|
||||
};
|
||||
home.sessionVariables = {
|
||||
TERM = lib.mkDefault "xterm-kitty";
|
||||
};
|
||||
};
|
||||
}
|
||||
61
home/apps/terminal/ranger.nix
Normal file
61
home/apps/terminal/ranger.nix
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
osConfig,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
config = lib.mkIf osConfig.apps.terminal.tui.ranger.enable {
|
||||
programs = {
|
||||
ranger = {
|
||||
enable = true;
|
||||
extraPackages = [
|
||||
|
||||
];
|
||||
settings = {
|
||||
viewmode = "miller";
|
||||
column_ratios = "1,3,4";
|
||||
show_hidden = true;
|
||||
confirm_on_delete = "multiple";
|
||||
use_preview_script = true;
|
||||
automatically_count_files = true;
|
||||
open_all_images = true;
|
||||
vcs_aware = true;
|
||||
vcs_backend_git = "enabled";
|
||||
vcs_msg_length = 50;
|
||||
preview_images = true;
|
||||
preview_images_method = lib.mkIf config.terminal.kitty.enable "kitty";
|
||||
preview_files = true;
|
||||
preview_directories = true;
|
||||
collapse_preview = false;
|
||||
save_console_history = true;
|
||||
status_bar_on_top = false;
|
||||
draw_progress_bar_in_status_bar = true;
|
||||
draw_borders = "both";
|
||||
dirname_in_tabs = true;
|
||||
mouse_enabled = false;
|
||||
display_size_in_main_column = true;
|
||||
display_size_in_status_bar = true;
|
||||
display_free_space_in_status_bar = true;
|
||||
display_tags_in_all_columns = true;
|
||||
update_title = true;
|
||||
update_tmux_title = true;
|
||||
shorten_title = 10;
|
||||
hostname_in_titlebar = true;
|
||||
tilde_in_titlebar = false;
|
||||
max_history_size = 100;
|
||||
max_console_history_size = 200;
|
||||
scroll_offset = 8;
|
||||
flushinput = true;
|
||||
autosave_bookmarks = true;
|
||||
show_cursor = false;
|
||||
sort = "natural";
|
||||
sort_case_insensitive = true;
|
||||
sort_directories_first = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
36
home/configs/niri/config.kdl
Normal file
36
home/configs/niri/config.kdl
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
output "AOC Q27G2WG4" {
|
||||
mode "2560x1440@144"
|
||||
position x=3840 y=0
|
||||
variable-refresh-rate on-demand=true
|
||||
}
|
||||
|
||||
input {
|
||||
keyboard {
|
||||
xkb {
|
||||
layout "de"
|
||||
}
|
||||
repeat-delay 600
|
||||
repeat-rate 20
|
||||
track-layout "global"
|
||||
}
|
||||
touchpad {
|
||||
|
||||
}
|
||||
mouse {
|
||||
accel-speed 0.5
|
||||
accel-profile "flat"
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
binds {
|
||||
Mod+WheelScrollDown cooldown-ms=150 { focus-workspace-down; }
|
||||
Mod+WheelScrollUp cooldown-ms=150 { focus-workspace-up; }
|
||||
|
||||
Mod+Left {focus-column-left; }
|
||||
Mod+Right {focus-column-right; }
|
||||
Mod+D { spawn "walker"; }
|
||||
Mod+Shift+P { quit; }
|
||||
Mod+Return { spawn "kitty";}
|
||||
}
|
||||
include "./noctalia.kdl"
|
||||
|
|
@ -7,6 +7,6 @@
|
|||
|
||||
{
|
||||
imports = [
|
||||
./sway.nix
|
||||
./desktop
|
||||
];
|
||||
}
|
||||
|
|
|
|||
13
home/desktop/default.nix
Normal file
13
home/desktop/default.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./window-managers
|
||||
./shell
|
||||
];
|
||||
}
|
||||
13
home/desktop/shell/default.nix
Normal file
13
home/desktop/shell/default.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./noctalia.nix
|
||||
./walker.nix
|
||||
];
|
||||
}
|
||||
19
home/desktop/shell/noctalia.nix
Normal file
19
home/desktop/shell/noctalia.nix
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
lib,
|
||||
osConfig,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
config = lib.mkIf osConfig.desktop.shell.noctalia.enable {
|
||||
};
|
||||
|
||||
imports = lib.mkIf osConfig.desktop.shell.noctalia.enable [
|
||||
inputs.noctalia.homeModules.default
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
26
home/desktop/shell/walker.nix
Normal file
26
home/desktop/shell/walker.nix
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
lib,
|
||||
osConfig,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
config = lib.mkIf osConfig.desktop.shell.walker.enable {
|
||||
programs = {
|
||||
walker = {
|
||||
enable = true;
|
||||
runAsService = true;
|
||||
config = {
|
||||
theme = "noctalia";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
imports = lib.mkIf osConfig.desktop.shell.walker.enable [
|
||||
inputs.walker.homeManagerModules.default
|
||||
]
|
||||
}
|
||||
14
home/desktop/window-managers/default.nix
Normal file
14
home/desktop/window-managers/default.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./hyprland.nix
|
||||
./niri.nix
|
||||
./sway.nix
|
||||
];
|
||||
}
|
||||
181
home/desktop/window-managers/hyprland.nix
Normal file
181
home/desktop/window-managers/hyprland.nix
Normal file
|
|
@ -0,0 +1,181 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
inputs,
|
||||
osConfig,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
desktop = {
|
||||
hyprland = {
|
||||
monitors = lib.mkOption {
|
||||
default = [
|
||||
",preferred,auto,1"
|
||||
];
|
||||
description = "declare monitors";
|
||||
};
|
||||
workspaces = {
|
||||
workspaces = lib.mkOption {
|
||||
default = (
|
||||
builtins.concatLists (
|
||||
builtins.genList (
|
||||
i:
|
||||
let
|
||||
ws = i + 1;
|
||||
in
|
||||
[
|
||||
"${toString i},persistent:true"
|
||||
]
|
||||
) config.desktop.hyprland.workspaces.amount
|
||||
)
|
||||
);
|
||||
description = "declare workspace";
|
||||
};
|
||||
amount = lib.mkOption {
|
||||
default = 9;
|
||||
description = "declare workspace amount";
|
||||
};
|
||||
};
|
||||
numlock = lib.mkEnableOption "numlock by default";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf osConfig.desktop.hyprland.enable {
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
configPackages = [
|
||||
inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland
|
||||
];
|
||||
extraPortals = [
|
||||
inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland
|
||||
pkgs.xdg-desktop-portal-xapp
|
||||
pkgs.xdg-desktop-portal-gtk
|
||||
|
||||
];
|
||||
config.common = {
|
||||
"org.freedesktop.portal.OpenURI" = [
|
||||
"*"
|
||||
"hyprland"
|
||||
];
|
||||
};
|
||||
};
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
xwayland.enable = true;
|
||||
systemd.enable = false;
|
||||
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
||||
portalPackage =
|
||||
inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
|
||||
settings = {
|
||||
monitor = config.desktop.hyprland.monitors;
|
||||
workspace = config.desktop.hyprland.workspaces.workspaces;
|
||||
env = [
|
||||
"XDG_CURRENT_DESKTOP,Hyprland"
|
||||
"XDG_SESSION_TYPE,wayland"
|
||||
"XDG_SESSION_DESKTOP,Hyprland"
|
||||
];
|
||||
exec-once = [
|
||||
(lib.mkIf (osConfig.desktop.shell.walker.enable) "elephant")
|
||||
(lib.mkIf (osConfig.desktop.shell.waybar.enable) "waybar")
|
||||
(lib.mkIf (osConfig.desktop.shell.noctalia.enable) "noctalia-shell")
|
||||
(lib.mkIf (osConfig.desktop.shell.noctalia.enable) "noctalia-shell ipc call wallpaper random")
|
||||
(lib.mkIf (osConfig.desktop.shell.swww.enable) "waypaper --restore --random")
|
||||
(lib.mkIf (osConfig.gaming.steam.enable) "adwaita-steam-gtk -u; steam -silent")
|
||||
(lib.mkIf (osConfig.internet.mail.providers.protonmail.enable) "protonmail-bridge -n")
|
||||
"echo $HYPRLAND_INSTANCE_SIGNATURE > ~/.config/hypr/instance_signature"
|
||||
];
|
||||
"$mod" = "SUPER";
|
||||
"$shiftmod" = "SUPER_SHIFT";
|
||||
"$controlmod" = "SUPER_CTRL";
|
||||
bind = [
|
||||
|
||||
(lib.mkIf (osConfig.desktop.shell.walker.enable) "$mod, D, exec, walker")
|
||||
(lib.mkIf (osConfig.desktop.shell.rofi.enable) "$mod, D, exec, rofi -show drun")
|
||||
"$mod, return, exec, ${osConfig.apps.terminal.binary}"
|
||||
(lib.mkIf (osConfig.desktop.utilities.grimblast.enable) ", print, exec, GRIMBLAST_EDITOR=gradia grimblast edit area")
|
||||
(lib.mkIf (osConfig.desktop.shell.walker.enable) (
|
||||
lib.mkIf (osConfig.misc.bitwarden.enable) "$mod, B, exec, rbw unlocked || kitty --class kitty-floating -e rbw unlock; selected=$(rbw list | walker -d); wl-copy $(rbw get \"$selected\"); sleep 30; rbw lock"
|
||||
))
|
||||
"$mod, F, fullscreen, 1"
|
||||
"$shiftmod, F, fullscreen, 0"
|
||||
"$shiftmod, Q, killactive,"
|
||||
"$mod, S, togglespecialworkspace, magic"
|
||||
"$mod, O, exec, zen"
|
||||
"$shiftmod, S, movetoworkspace, special:magic"
|
||||
"$controlmod, right, workspace, m+1"
|
||||
"$controlmod, left, workspace, m-1"
|
||||
"$mod, mouse_down, workspace, m-1"
|
||||
"$mod, mouse_up, workspace, m+1"
|
||||
"$mod, left, movefocus, l"
|
||||
"$mod, right, movefocus, r"
|
||||
"$mod, up, movefocus, u"
|
||||
"$mod, down, movefocus, d"
|
||||
"$mod, J, exec, playerctl previous"
|
||||
"$mod, K, exec, playerctl play-pause"
|
||||
"$mod, L, exec, playerctl next"
|
||||
"$mod, G, togglefloating,"
|
||||
"$mod, F1, exec, hyprlock"
|
||||
"$shiftmod, E, exec, codium"
|
||||
"$controlmod, up, exec, light -A 10"
|
||||
"$controlmod, down, exec, light -U 10"
|
||||
"$controlmod, Q, exec, hyprctl kill"
|
||||
|
||||
]
|
||||
++ (builtins.concatLists (
|
||||
builtins.genList (
|
||||
i:
|
||||
let
|
||||
ws = i + 1;
|
||||
in
|
||||
[
|
||||
"$mod, code:1${toString i}, workspace, ${toString ws}"
|
||||
"$shiftmod, code:1${toString i}, movetoworkspacesilent, ${toString ws}"
|
||||
]
|
||||
) config.desktop.hyprland.workspaces.amount
|
||||
));
|
||||
bindm = [
|
||||
"$mod, mouse:272, movewindow"
|
||||
"$mod, mouse:273, resizewindow"
|
||||
];
|
||||
bindel = [
|
||||
",XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+"
|
||||
",XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"
|
||||
];
|
||||
input = {
|
||||
kb_layout = "de";
|
||||
numlock_by_default = config.desktop.hyprland.numlock;
|
||||
follow_mouse = 2;
|
||||
mouse_refocus = false;
|
||||
accel_profile = "flat";
|
||||
sensitivity = 0.2;
|
||||
touchpad = {
|
||||
natural_scroll = "no";
|
||||
disable_while_typing = true;
|
||||
};
|
||||
};
|
||||
cursor = {
|
||||
inactive_timeout = 0;
|
||||
no_warps = true;
|
||||
};
|
||||
decoration = {
|
||||
rounding = 20;
|
||||
blur = {
|
||||
enabled = true;
|
||||
size = 3;
|
||||
passes = 1;
|
||||
};
|
||||
shadow = {
|
||||
range = 4;
|
||||
render_power = 3;
|
||||
color = "rgba(1a1a1aee)";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
home.sessionVariables.NIXOS_OZONE_WL = "1";
|
||||
};
|
||||
}
|
||||
22
home/desktop/window-managers/niri.nix
Normal file
22
home/desktop/window-managers/niri.nix
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
inputs,
|
||||
osConfig,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
desktop.window-managers = {
|
||||
niri = {
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
config = lib.mkIf osConfig.desktop.window-managers.niri.enable {
|
||||
xdg.configFile."niri/config.kdl".source = ../../configs/niri/config.kdl;
|
||||
|
||||
};
|
||||
}
|
||||
|
|
@ -8,14 +8,13 @@
|
|||
|
||||
{
|
||||
options = {
|
||||
desktop = {
|
||||
desktop.window-managers = {
|
||||
sway = {
|
||||
enable = lib.mkEnableOption "enable sway";
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
config = {
|
||||
config = lib.mkIf osConfig.desktop.window-managers.sway.enable {
|
||||
wayland.windowManager.sway = {
|
||||
enable = true;
|
||||
package = pkgs.swayfx;
|
||||
|
|
@ -37,7 +36,6 @@
|
|||
"${modifier}+Control+left" = "exec /home/marty/.config/sway/scripts/workspaceswitcher left";
|
||||
"${modifier}+f" = "fullscreen";
|
||||
|
||||
|
||||
"${modifier}+1" = "workspace number 1";
|
||||
"${modifier}+2" = "workspace number 2";
|
||||
"${modifier}+3" = "workspace number 3";
|
||||
|
|
@ -49,7 +47,6 @@
|
|||
"${modifier}+9" = "workspace number 9";
|
||||
"${modifier}+s" = "workspace number 0";
|
||||
|
||||
|
||||
"${modifier}+Shift+1" = "move container to workspace number 1";
|
||||
"${modifier}+Shift+2" = "move container to workspace number 2";
|
||||
"${modifier}+Shift+3" = "move container to workspace number 3";
|
||||
|
|
@ -63,11 +60,11 @@
|
|||
};
|
||||
input = {
|
||||
"*" = {
|
||||
xkb_layout = "de";
|
||||
xkb_layout = builtins.substring 0 2 osConfig.system.locale;
|
||||
};
|
||||
};
|
||||
defaultWorkspace = "workspace number 1";
|
||||
terminal = "${pkgs.kitty}/bin/kitty";
|
||||
terminal = osConfig.desktop.defaults.terminal.binary;
|
||||
};
|
||||
checkConfig = false;
|
||||
};
|
||||
20
home/modules/connectivity/bluetooth/default.nix
Normal file
20
home/modules/connectivity/bluetooth/default.nix
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
bluetooth = {
|
||||
enable = lib.mkEnableOption "enable bluetooth";
|
||||
};
|
||||
};
|
||||
config = lib.mkIf config.bluetooth.enable {
|
||||
home.packages = with pkgs; [
|
||||
bluez
|
||||
bluetuith
|
||||
];
|
||||
};
|
||||
}
|
||||
15
home/modules/connectivity/default.nix
Normal file
15
home/modules/connectivity/default.nix
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./internet
|
||||
./bluetooth
|
||||
./mounts
|
||||
./social-media
|
||||
];
|
||||
}
|
||||
16
home/modules/connectivity/internet/default.nix
Normal file
16
home/modules/connectivity/internet/default.nix
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./librewolf.nix
|
||||
./zen-browser.nix
|
||||
./tor.nix
|
||||
./mail.nix
|
||||
./rss.nix
|
||||
];
|
||||
}
|
||||
21
home/modules/connectivity/internet/librewolf.nix
Normal file
21
home/modules/connectivity/internet/librewolf.nix
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
internet.browsers = {
|
||||
librewolf = {
|
||||
enable = lib.mkEnableOption "enable librewolf";
|
||||
};
|
||||
};
|
||||
};
|
||||
config = lib.mkIf config.internet.browsers.librewolf.enable {
|
||||
home.packages = with pkgs; [
|
||||
librewolf
|
||||
];
|
||||
};
|
||||
}
|
||||
34
home/modules/connectivity/internet/mail.nix
Normal file
34
home/modules/connectivity/internet/mail.nix
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
internet = {
|
||||
mail.enable = lib.mkEnableOption "enable e-mail";
|
||||
mail.providers.protonmail.enable = lib.mkEnableOption "enable protonmail";
|
||||
};
|
||||
};
|
||||
config = {
|
||||
programs = {
|
||||
thunderbird = lib.mkIf config.internet.mail.enable {
|
||||
enable = true;
|
||||
profiles."default" = {
|
||||
isDefault = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
services = {
|
||||
protonmail-bridge = lib.mkIf config.internet.mail.providers.protonmail.enable {
|
||||
enable = true;
|
||||
package = pkgs.protonmail-bridge;
|
||||
extraPackages = with pkgs; [
|
||||
gnome-keyring
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
19
home/modules/connectivity/internet/rss.nix
Normal file
19
home/modules/connectivity/internet/rss.nix
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
internet = {
|
||||
rss.enable = lib.mkEnableOption "enable rss";
|
||||
};
|
||||
};
|
||||
config = {
|
||||
home.packages = with pkgs; [
|
||||
(lib.mkIf (config.internet.rss.enable) newsflash)
|
||||
];
|
||||
};
|
||||
}
|
||||
21
home/modules/connectivity/internet/tor.nix
Normal file
21
home/modules/connectivity/internet/tor.nix
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
internet = {
|
||||
tor.enable = lib.mkEnableOption "enable tor";
|
||||
browsers.tor-browser.enable = lib.mkEnableOption "enable tor-browser";
|
||||
};
|
||||
};
|
||||
config = {
|
||||
home.packages = with pkgs; [
|
||||
(lib.mkIf (config.internet.browsers.tor-browser.enable) tor-browser)
|
||||
(lib.mkIf (config.internet.tor.enable) oniux)
|
||||
];
|
||||
};
|
||||
}
|
||||
98
home/modules/connectivity/internet/zen-browser.nix
Normal file
98
home/modules/connectivity/internet/zen-browser.nix
Normal file
|
|
@ -0,0 +1,98 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
extension = shortId: guid: {
|
||||
name = guid;
|
||||
value = {
|
||||
install_url = "https://addons.mozilla.org/en-US/firefox/downloads/latest/${shortId}/latest.xpi";
|
||||
installation_mode = "normal_installed";
|
||||
};
|
||||
};
|
||||
|
||||
prefs = {
|
||||
# Check these out at about:config
|
||||
"extensions.autoDisableScopes" = 0;
|
||||
"extensions.pocket.enabled" = false;
|
||||
"general.autoScroll" = true;
|
||||
"general.smoothScroll" = true;
|
||||
"middlemouse.contentLoadURL" = false;
|
||||
"devtools.debugger.remote-enabled" = true;
|
||||
"devtools.chrome.enabled" = true;
|
||||
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
|
||||
"browser.ml.enable" = false;
|
||||
"browser.ml.chat.enabled" = false;
|
||||
"browser.ml.chat.menu" = false;
|
||||
"browser.ml.chat.page" = false;
|
||||
"browser.ml.chat.page.footerBadge" = false;
|
||||
"browser.ml.chat.page.menuBadge" = false;
|
||||
"browser.ml.linkPreview.enabled" = false;
|
||||
"browser.ml.pageAssist.enabled" = false;
|
||||
"browser.tabs.groups.smart.enabled" = false;
|
||||
"browser.tabs.groups.smart.userEnabled" = false;
|
||||
"extensions.ml.enabled" = false;
|
||||
"browser.search.visualSearch.featureGate" = false;
|
||||
# ...
|
||||
};
|
||||
|
||||
extensions = [
|
||||
# To add additional extensions, find it on addons.mozilla.org, find
|
||||
# the short ID in the url (like https://addons.mozilla.org/en-US/firefox/addon/!SHORT_ID!/)
|
||||
# Then go to https://addons.mozilla.org/api/v5/addons/addon/!SHORT_ID!/ to get the guid
|
||||
(extension "adnauseam" "adnauseam@rednoise.org")
|
||||
(extension "floccus" "floccus@handmadeideas.org")
|
||||
(extension "bitwarden-password-manager" "{446900e4-71c2-419f-a6a7-df9c091e268b}")
|
||||
(extension "simplelogin" "addon@simplelogin")
|
||||
(extension "localcdn-fork-of-decentraleyes" "{b86e4813-687a-43e6-ab65-0bde4ab75758}")
|
||||
(extension "catppuccin-web-file-icons" "{bbb880ce-43c9-47ae-b746-c3e0096c5b76}")
|
||||
(extension "peertube-companion" "peertube-companion@booteille")
|
||||
(extension "peertubeify" "{01175c8e-4506-4263-bad9-d3ddfd4f5a5f}")
|
||||
(extension "peertube-picks" "{937c0767-0608-41e2-917a-8bf06601275a}")
|
||||
# ...
|
||||
];
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
options = {
|
||||
internet.browsers = {
|
||||
zen-browser = {
|
||||
enable = lib.mkEnableOption "enable zen-browser";
|
||||
};
|
||||
};
|
||||
};
|
||||
config = lib.mkIf config.internet.browsers.zen-browser.enable {
|
||||
home.packages = [
|
||||
(pkgs.wrapFirefox
|
||||
inputs.zen-browser.packages.${pkgs.stdenv.hostPlatform.system}.zen-browser-unwrapped
|
||||
{
|
||||
extraPrefs = lib.concatLines (
|
||||
lib.mapAttrsToList (
|
||||
name: value: ''lockPref(${lib.strings.toJSON name}, ${lib.strings.toJSON value});''
|
||||
) prefs
|
||||
);
|
||||
extraPolicies = {
|
||||
DisableTelemetry = true;
|
||||
ExtensionSettings = builtins.listToAttrs extensions;
|
||||
|
||||
SearchEngines = {
|
||||
Default = "MartyTF's Series of Tubes";
|
||||
Add = [
|
||||
{
|
||||
Name = "MartyTF's Series of Tubes";
|
||||
URLTemplate = "https://search.marty.tf/?q={searchTerms}";
|
||||
IconURL = "https://wiki.nixos.org/favicon.ico";
|
||||
Alias = "@sgx";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
)
|
||||
];
|
||||
};
|
||||
}
|
||||
12
home/modules/connectivity/mounts/default.nix
Normal file
12
home/modules/connectivity/mounts/default.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./sshfs.nix
|
||||
];
|
||||
}
|
||||
28
home/modules/connectivity/mounts/sshfs.nix
Normal file
28
home/modules/connectivity/mounts/sshfs.nix
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
};
|
||||
config = {
|
||||
programs.sftpman = {
|
||||
enable = true;
|
||||
mounts = {
|
||||
marty-server = {
|
||||
host = "marty-server";
|
||||
user = "marty";
|
||||
mountOptions = [
|
||||
"/mnt/Server"
|
||||
];
|
||||
mountPoint = "/";
|
||||
};
|
||||
};
|
||||
package = pkgs.sshfs;
|
||||
defaultSshKey = "~/.ssh/id_ed25519";
|
||||
};
|
||||
};
|
||||
}
|
||||
15
home/modules/connectivity/social-media/default.nix
Normal file
15
home/modules/connectivity/social-media/default.nix
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./messaging
|
||||
];
|
||||
home.packages = with pkgs; [
|
||||
fedistar
|
||||
];
|
||||
}
|
||||
31
home/modules/connectivity/social-media/messaging/default.nix
Normal file
31
home/modules/connectivity/social-media/messaging/default.nix
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
messaging = {
|
||||
enable = lib.mkEnableOption "enable all messaging";
|
||||
element.enable = lib.mkEnableOption "enable element";
|
||||
signal.enable = lib.mkEnableOption "enable signal";
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
messaging = lib.mkIf config.messaging.enable {
|
||||
element.enable = lib.mkDefault true;
|
||||
signal.enable = lib.mkDefault true;
|
||||
};
|
||||
home.packages = with pkgs; [
|
||||
(lib.mkIf (config.messaging.signal.enable) signal-desktop)
|
||||
];
|
||||
programs = {
|
||||
element-desktop = lib.mkIf config.messaging.element.enable {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
60
home/modules/defaults/default.nix
Normal file
60
home/modules/defaults/default.nix
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
device = {
|
||||
type = {
|
||||
laptop = lib.mkEnableOption "laptop";
|
||||
desktop = lib.mkEnableOption "desktop";
|
||||
server = lib.mkEnableOption "server";
|
||||
};
|
||||
};
|
||||
};
|
||||
imports = [
|
||||
./laptop.nix
|
||||
./desktop.nix
|
||||
./server.nix
|
||||
];
|
||||
config = {
|
||||
development = lib.mkDefault {
|
||||
git.enable = true;
|
||||
};
|
||||
terminal = lib.mkDefault {
|
||||
ranger.enable = true;
|
||||
};
|
||||
misc = lib.mkDefault {
|
||||
bitwarden.enable = true;
|
||||
};
|
||||
internet.tor.enable = true;
|
||||
syncthing = lib.mkDefault {
|
||||
devices = {
|
||||
marty-pc = {
|
||||
id = "6PJZD52-EEWIO7U-MZMJJ5B-33DGNSU-O7DJVRT-GAE7QZG-ZY3VIMV-VSMBDQP";
|
||||
autoAcceptFolder = true;
|
||||
};
|
||||
marty-server = {
|
||||
id = "UDMXEKZ-HYIFI5S-VAKE75O-K3C65QV-LS43QA5-3JTHWKL-CI5C3Y6-P4NSQQM";
|
||||
autoAcceptFolders = true;
|
||||
};
|
||||
marty-latitude = {
|
||||
id = "SOAWHKA-BCQGO5G-IJ24WTO-RDETP5M-LNTVO66-MHIOUU2-NNQ57P6-FFKNSA6";
|
||||
autoAcceptFolders = true;
|
||||
};
|
||||
marty-pixel = {
|
||||
id = "GSBXOGW-6SYLDUQ-HPH7FBJ-CKHWQIK-K5YORB4-CYKGYT6-DLCVSAK-LA2RMAK";
|
||||
autoAcceptFolders = true;
|
||||
};
|
||||
marty-fairphone = {
|
||||
id = "2ISVWQV-4USY5IA-2OU55CE-Q7VLPD7-4RVQ5WX-FXQSJMY-2ES4EZG-IGFB7QG";
|
||||
autoAcceptFolders = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
58
home/modules/defaults/desktop.nix
Normal file
58
home/modules/defaults/desktop.nix
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
config = lib.mkIf config.device.type.desktop {
|
||||
development = lib.mkDefault {
|
||||
vscodium.enable = true;
|
||||
godot.enable = true;
|
||||
python.enable = true;
|
||||
};
|
||||
terminal = lib.mkDefault {
|
||||
kitty.enable = true;
|
||||
};
|
||||
desktop = lib.mkDefault {
|
||||
hyprland = {
|
||||
enable = true;
|
||||
numlock = true;
|
||||
};
|
||||
# waybar.enable = true;
|
||||
walker.enable = true;
|
||||
wallpaper.enable = true;
|
||||
grimblast.enable = true;
|
||||
audio.enable = true;
|
||||
noctalia.enable = true;
|
||||
};
|
||||
messaging.enable = true;
|
||||
internet = lib.mkDefault {
|
||||
browsers = {
|
||||
zen-browser = {
|
||||
enable = true;
|
||||
};
|
||||
tor-browser = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
mail = {
|
||||
enable = true;
|
||||
providers.protonmail.enable = true;
|
||||
};
|
||||
rss.enable = true;
|
||||
};
|
||||
bluetooth.enable = true;
|
||||
media = {
|
||||
images.enable = true;
|
||||
video.enable = true;
|
||||
audio.enable = true;
|
||||
threeD.enable = true;
|
||||
};
|
||||
misc = {
|
||||
obsidian.enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
51
home/modules/defaults/laptop.nix
Normal file
51
home/modules/defaults/laptop.nix
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
config = lib.mkIf config.device.type.laptop {
|
||||
home.packages = with pkgs; [
|
||||
light
|
||||
];
|
||||
development = lib.mkDefault {
|
||||
vscodium.enable = true;
|
||||
};
|
||||
terminal = lib.mkDefault {
|
||||
kitty.enable = true;
|
||||
};
|
||||
desktop = lib.mkDefault {
|
||||
hyprland = {
|
||||
enable = true;
|
||||
};
|
||||
# waybar.enable = true;
|
||||
walker.enable = true;
|
||||
wallpaper.enable = true;
|
||||
grimblast.enable = true;
|
||||
audio.enable = true;
|
||||
noctalia.enable = true;
|
||||
};
|
||||
messaging.enable = true;
|
||||
internet = lib.mkDefault {
|
||||
browsers = {
|
||||
zen-browser = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
mail = {
|
||||
enable = true;
|
||||
providers.protonmail.enable = true;
|
||||
};
|
||||
rss.enable = true;
|
||||
};
|
||||
bluetooth.enable = true;
|
||||
media = {
|
||||
images.nomacs.enable = true;
|
||||
video.mpv.enable = true;
|
||||
video.tsukimi.enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
11
home/modules/defaults/server.nix
Normal file
11
home/modules/defaults/server.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
|
||||
}
|
||||
20
home/modules/development/default.nix
Normal file
20
home/modules/development/default.nix
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./git.nix
|
||||
./vscodium.nix
|
||||
./python.nix
|
||||
./godot.nix
|
||||
./openssl.nix
|
||||
];
|
||||
home.packages = with pkgs; [
|
||||
bc
|
||||
imagemagick
|
||||
];
|
||||
}
|
||||
34
home/modules/development/git.nix
Normal file
34
home/modules/development/git.nix
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
development = {
|
||||
git.enable = lib.mkEnableOption "enable git";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf config.development.git.enable {
|
||||
programs = {
|
||||
git = {
|
||||
enable = true;
|
||||
settings = {
|
||||
init = {
|
||||
defaultBranch = "main";
|
||||
};
|
||||
user = {
|
||||
email = "marty@marty.tf";
|
||||
name = "marty";
|
||||
};
|
||||
push = {
|
||||
autoSetupRemote = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
20
home/modules/development/godot.nix
Normal file
20
home/modules/development/godot.nix
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
development = {
|
||||
godot.enable = lib.mkEnableOption "enable godot";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf config.development.godot.enable {
|
||||
home.packages = with pkgs; [
|
||||
godot
|
||||
];
|
||||
};
|
||||
}
|
||||
12
home/modules/development/openssl.nix
Normal file
12
home/modules/development/openssl.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
openssl
|
||||
];
|
||||
}
|
||||
21
home/modules/development/python.nix
Normal file
21
home/modules/development/python.nix
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
development = {
|
||||
python.enable = lib.mkEnableOption "enable python";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf config.development.python.enable {
|
||||
home.packages = with pkgs; [
|
||||
uv
|
||||
virtualenv
|
||||
];
|
||||
};
|
||||
}
|
||||
38
home/modules/development/vscodium.nix
Normal file
38
home/modules/development/vscodium.nix
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
development = {
|
||||
vscodium.enable = lib.mkEnableOption "enable vscodium";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf config.development.vscodium.enable {
|
||||
programs.vscode = {
|
||||
enable = true;
|
||||
package = pkgs.vscodium;
|
||||
profiles.default.extensions = with pkgs.vscode-extensions; [
|
||||
catppuccin.catppuccin-vsc
|
||||
catppuccin.catppuccin-vsc-icons
|
||||
jnoortheen.nix-ide
|
||||
alefragnani.project-manager
|
||||
naumovs.color-highlight
|
||||
geequlim.godot-tools
|
||||
stylelint.vscode-stylelint
|
||||
ecmel.vscode-html-css
|
||||
esbenp.prettier-vscode
|
||||
];
|
||||
};
|
||||
home.packages = with pkgs; [
|
||||
nixfmt
|
||||
];
|
||||
home.sessionVariables = {
|
||||
EDITOR = lib.mkDefault "codium";
|
||||
};
|
||||
};
|
||||
}
|
||||
28
home/modules/media/3d.nix
Normal file
28
home/modules/media/3d.nix
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
media = {
|
||||
threeD = {
|
||||
enable = lib.mkEnableOption "enable all 3d media";
|
||||
blender.enable = lib.mkEnableOption "enable blender";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
media.threeD = lib.mkIf config.media.threeD.enable {
|
||||
blender.enable = lib.mkDefault true;
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
(lib.mkIf (config.media.threeD.blender.enable) blender)
|
||||
|
||||
];
|
||||
};
|
||||
}
|
||||
22
home/modules/misc/bitwarden.nix
Normal file
22
home/modules/misc/bitwarden.nix
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
misc = {
|
||||
bitwarden.enable = lib.mkEnableOption "enable bitwarden";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf config.misc.bitwarden.enable {
|
||||
home.packages = with pkgs; [
|
||||
rbw
|
||||
pinentry-curses
|
||||
(lib.mkIf (config.desktop.rofi.enable) rofi-rbw)
|
||||
];
|
||||
};
|
||||
}
|
||||
15
home/modules/misc/default.nix
Normal file
15
home/modules/misc/default.nix
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./bitwarden.nix
|
||||
./syncthing.nix
|
||||
./secrets.nix
|
||||
./obsidian.nix
|
||||
];
|
||||
}
|
||||
20
home/modules/misc/obsidian.nix
Normal file
20
home/modules/misc/obsidian.nix
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
misc = {
|
||||
obsidian.enable = lib.mkEnableOption "enable obsidian";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf config.misc.obsidian.enable {
|
||||
home.packages = with pkgs; [
|
||||
obsidian
|
||||
];
|
||||
};
|
||||
}
|
||||
17
home/modules/misc/secrets.nix
Normal file
17
home/modules/misc/secrets.nix
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
pass
|
||||
gnome-keyring
|
||||
seahorse
|
||||
libsecret
|
||||
gcr
|
||||
];
|
||||
services.gnome-keyring.enable = true;
|
||||
}
|
||||
42
home/modules/misc/syncthing.nix
Normal file
42
home/modules/misc/syncthing.nix
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
syncthing.devices = lib.mkOption {
|
||||
default = { };
|
||||
description = ''
|
||||
set syncthing devices
|
||||
'';
|
||||
};
|
||||
syncthing.folders = lib.mkOption {
|
||||
default = { };
|
||||
description = ''
|
||||
set syncthing folders
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
home.packages = with pkgs; [
|
||||
localsend
|
||||
];
|
||||
services = {
|
||||
syncthing = {
|
||||
enable = true;
|
||||
tray.enable = true;
|
||||
guiAddress = "0.0.0.0:8384";
|
||||
settings = {
|
||||
devices = config.syncthing.devices;
|
||||
folders = config.syncthing.folders;
|
||||
};
|
||||
overrideDevices = lib.mkIf (config.syncthing.devices == { }) false;
|
||||
overrideFolders = lib.mkIf (config.syncthing.folders == { }) false;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
inputs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
desktop = {
|
||||
sway = {
|
||||
enable = lib.mkEnableOption "enable sway";
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
config = {
|
||||
wayland.windowManager.niri = {
|
||||
};
|
||||
};
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue