Compare commits

...

2 Commits

Author SHA1 Message Date
6fc63520e9 steal stylix from MaxMur
Signed-off-by: unexplrd <unexplrd@linerds.us>
2025-04-03 18:30:11 +03:00
211e509628 steal from MaxMur
Signed-off-by: unexplrd <unexplrd@linerds.us>
2025-04-03 18:30:11 +03:00
22 changed files with 248 additions and 385 deletions

View File

@ -10,13 +10,16 @@
./programs.nix
./services.nix
./sops.nix
./stylix.nix
./users.nix
];
desktop.niri.enable = true;
environment.memoryAllocator.provider = "mimalloc";
locale.ukrainian.enable = true;
module.stylix = {
enable = true;
theme = "nord";
};
opentabletdriver.enable = false;
qmk-vial.enable = true;
security.basic.enable = true;

View File

@ -1,50 +0,0 @@
{
pkgs,
inputs,
config,
...
}: {
imports = with inputs; [
stylix.nixosModules.stylix
];
environment.systemPackages = with pkgs; [
nerd-fonts.iosevka
];
stylix = {
enable = true;
base16Scheme = "${pkgs.base16-schemes}/share/themes/nord-light.yaml";
polarity = "light";
cursor = {
package = pkgs.nordzy-cursor-theme;
name = "Nordzy-cursors-white";
size = 32;
};
image = builtins.fetchurl {
url = "https://w.wallhaven.cc/full/l8/wallhaven-l8l9gq.png";
name = "wallhaven-l8l9gq.png";
sha256 = "0ypr44sg0fn55m1b52dgr1nnscpi2p6rfkjsm7vvrdqw7bafbx2z";
};
opacity.terminal = 0.9;
fonts = {
sizes = {
applications = 13;
desktop = 14;
popups = 13;
terminal = 15;
};
serif = {
package = pkgs.nerd-fonts.iosevka;
name = "Iosevka Nerd Font Propo";
};
sansSerif = config.stylix.fonts.serif;
monospace = {
package = pkgs.nerd-fonts.iosevka-term;
name = "IosevkaTerm Nerd Font Mono";
};
emoji = {
package = pkgs.noto-fonts-emoji;
name = "Noto Color Emoji";
};
};
};
}

View File

@ -1,50 +0,0 @@
{
pkgs,
inputs,
config,
...
}: {
imports = with inputs; [
stylix.nixosModules.stylix
];
environment.systemPackages = with pkgs; [
nerd-fonts.iosevka
];
stylix = {
enable = true;
base16Scheme = "${pkgs.base16-schemes}/share/themes/nord.yaml";
polarity = "dark";
cursor = {
package = pkgs.nordzy-cursor-theme;
name = "Nordzy-cursors";
size = 32;
};
image = builtins.fetchurl {
url = "https://w.wallhaven.cc/full/l8/wallhaven-l8l9gq.png";
name = "wallhaven-l8l9gq.png";
sha256 = "0ypr44sg0fn55m1b52dgr1nnscpi2p6rfkjsm7vvrdqw7bafbx2z";
};
opacity.terminal = 0.9;
fonts = {
sizes = {
applications = 13;
desktop = 14;
popups = 13;
terminal = 15;
};
serif = {
package = pkgs.nerd-fonts.iosevka;
name = "Iosevka Nerd Font Propo";
};
sansSerif = config.stylix.fonts.serif;
monospace = {
package = pkgs.nerd-fonts.iosevka-term;
name = "IosevkaTerm Nerd Font Mono";
};
emoji = {
package = pkgs.noto-fonts-emoji;
name = "Noto Color Emoji";
};
};
};
}

View File

@ -19,6 +19,11 @@
locale.ukrainian.enable = true;
module.stylix = {
enable = true;
theme = "nord";
};
opentabletdriver.enable = false;
qmk-vial.enable = true;

View File

@ -1,50 +0,0 @@
{
pkgs,
inputs,
config,
...
}: {
imports = with inputs; [
stylix.nixosModules.stylix
];
environment.systemPackages = with pkgs; [
nerd-fonts.iosevka
];
stylix = {
enable = true;
base16Scheme = "${pkgs.base16-schemes}/share/themes/nord-light.yaml";
polarity = "light";
cursor = {
package = pkgs.nordzy-cursor-theme;
name = "Nordzy-cursors-white";
size = 32;
};
image = builtins.fetchurl {
url = "https://w.wallhaven.cc/full/l8/wallhaven-l8l9gq.png";
name = "wallhaven-l8l9gq.png";
sha256 = "0ypr44sg0fn55m1b52dgr1nnscpi2p6rfkjsm7vvrdqw7bafbx2z";
};
opacity.terminal = 0.9;
fonts = {
sizes = {
applications = 13;
desktop = 14;
popups = 13;
terminal = 15;
};
serif = {
package = pkgs.nerd-fonts.iosevka;
name = "Iosevka Nerd Font Propo";
};
sansSerif = config.stylix.fonts.serif;
monospace = {
package = pkgs.nerd-fonts.iosevka-term;
name = "IosevkaTerm Nerd Font Mono";
};
emoji = {
package = pkgs.noto-fonts-emoji;
name = "Noto Color Emoji";
};
};
};
}

View File

@ -1,50 +0,0 @@
{
pkgs,
inputs,
config,
...
}: {
imports = with inputs; [
stylix.nixosModules.stylix
];
environment.systemPackages = with pkgs; [
nerd-fonts.iosevka
];
stylix = {
enable = true;
base16Scheme = "${pkgs.base16-schemes}/share/themes/nord.yaml";
polarity = "dark";
cursor = {
package = pkgs.nordzy-cursor-theme;
name = "Nordzy-cursors";
size = 32;
};
image = builtins.fetchurl {
url = "https://w.wallhaven.cc/full/l8/wallhaven-l8l9gq.png";
name = "wallhaven-l8l9gq.png";
sha256 = "0ypr44sg0fn55m1b52dgr1nnscpi2p6rfkjsm7vvrdqw7bafbx2z";
};
opacity.terminal = 0.9;
fonts = {
sizes = {
applications = 13;
desktop = 14;
popups = 13;
terminal = 15;
};
serif = {
package = pkgs.nerd-fonts.iosevka;
name = "Iosevka Nerd Font Propo";
};
sansSerif = config.stylix.fonts.serif;
monospace = {
package = pkgs.nerd-fonts.iosevka-term;
name = "IosevkaTerm Nerd Font Mono";
};
emoji = {
package = pkgs.noto-fonts-emoji;
name = "Noto Color Emoji";
};
};
};
}

View File

@ -19,6 +19,11 @@
locale.ukrainian.enable = true;
module.stylix = {
enable = true;
theme = "nord";
};
opentabletdriver.enable = false;
qmk-vial.enable = true;

View File

@ -1,50 +0,0 @@
{
pkgs,
inputs,
config,
...
}: {
imports = with inputs; [
stylix.nixosModules.stylix
];
environment.systemPackages = with pkgs; [
nerd-fonts.iosevka
];
stylix = {
enable = true;
base16Scheme = "${pkgs.base16-schemes}/share/themes/nord-light.yaml";
polarity = "light";
cursor = {
package = pkgs.nordzy-cursor-theme;
name = "Nordzy-cursors-white";
size = 32;
};
image = builtins.fetchurl {
url = "https://w.wallhaven.cc/full/l8/wallhaven-l8l9gq.png";
name = "wallhaven-l8l9gq.png";
sha256 = "0ypr44sg0fn55m1b52dgr1nnscpi2p6rfkjsm7vvrdqw7bafbx2z";
};
opacity.terminal = 0.9;
fonts = {
sizes = {
applications = 13;
desktop = 14;
popups = 13;
terminal = 15;
};
serif = {
package = pkgs.nerd-fonts.iosevka;
name = "Iosevka Nerd Font Propo";
};
sansSerif = config.stylix.fonts.serif;
monospace = {
package = pkgs.nerd-fonts.iosevka-term;
name = "IosevkaTerm Nerd Font Mono";
};
emoji = {
package = pkgs.noto-fonts-emoji;
name = "Noto Color Emoji";
};
};
};
}

View File

@ -1,50 +0,0 @@
{
pkgs,
inputs,
config,
...
}: {
imports = with inputs; [
stylix.nixosModules.stylix
];
environment.systemPackages = with pkgs; [
nerd-fonts.iosevka
];
stylix = {
enable = true;
base16Scheme = "${pkgs.base16-schemes}/share/themes/nord.yaml";
polarity = "dark";
cursor = {
package = pkgs.nordzy-cursor-theme;
name = "Nordzy-cursors";
size = 32;
};
image = builtins.fetchurl {
url = "https://w.wallhaven.cc/full/l8/wallhaven-l8l9gq.png";
name = "wallhaven-l8l9gq.png";
sha256 = "0ypr44sg0fn55m1b52dgr1nnscpi2p6rfkjsm7vvrdqw7bafbx2z";
};
opacity.terminal = 0.9;
fonts = {
sizes = {
applications = 13;
desktop = 14;
popups = 13;
terminal = 15;
};
serif = {
package = pkgs.nerd-fonts.iosevka;
name = "Iosevka Nerd Font Propo";
};
sansSerif = config.stylix.fonts.serif;
monospace = {
package = pkgs.nerd-fonts.iosevka-term;
name = "IosevkaTerm Nerd Font Mono";
};
emoji = {
package = pkgs.noto-fonts-emoji;
name = "Noto Color Emoji";
};
};
};
}

View File

@ -6,24 +6,25 @@
lib,
...
}: let
inherit (config.stylix) colors;
inherit (lib) mkIf mkEnableOption mkDefault mkForce getExe;
cfg = config.desktop.hyprland;
hostname = osConfig.networking.hostName;
cursorSize = config.stylix.cursor.size;
fontName = config.stylix.fonts.sansSerif.name;
inherit (config.lib.stylix) colors;
keyboard =
if hostname == "eldrid"
then "chromeos"
else "platform";
xdgPictures =
config.xdg.userDirs.pictures;
ifLaptop = lib.mkIf (hostname != "dunamis");
ifLaptop = mkIf (hostname != "dunamis");
in {
options = {
desktop.hyprland.enable =
lib.mkEnableOption "enable hyprland desktop";
mkEnableOption "enable hyprland desktop";
};
config = lib.mkIf cfg.enable {
config = mkIf cfg.enable {
stylix.targets.waybar.enable = false;
stylix.targets.hyprland.enable = false;
stylix.targets.hyprlock.enable = false;
@ -507,7 +508,7 @@ in {
};
qt = {
enable = true;
platformTheme.name = lib.mkDefault "gtk3";
platformTheme.name = mkDefault "gtk3";
};
dconf.settings = {
"org/gnome/desktop/interface" = {
@ -1017,7 +1018,7 @@ in {
width = 300;
height = 300;
icon_theme = "${config.dconf.settings."org/gnome/desktop/interface".icon-theme}";
corner_radius = lib.mkDefault 9;
corner_radius = mkDefault 9;
#corners = "top-right,bottom-left";
offset = "16x16";
origin = "bottom-right";
@ -1230,7 +1231,7 @@ in {
Service =
graphicalService.Service
// {
Environment = lib.mkForce "QT_QPA_PLATFORM=wayland";
Environment = mkForce "QT_QPA_PLATFORM=wayland";
};
};
hyprpolkitagent = mkGraphicalService {
@ -1252,7 +1253,7 @@ in {
// {
Type = "simple";
Slice = "session.slice";
ExecStart = "${lib.getExe perSystem.hyprsunset.hyprsunset} -t 6500";
ExecStart = "${getExe perSystem.hyprsunset.hyprsunset} -t 6500";
};
};
};

View File

@ -5,9 +5,10 @@
lib,
...
}: let
cfg = config.desktop.niri;
inherit (lib) mkIf mkEnableOption mkDefault mkForce getExe;
inherit (osConfig.networking) hostId;
inherit (config.lib.stylix) colors;
cfg = config.desktop.niri;
cursorSize = config.stylix.cursor.size;
cursorName = config.stylix.cursor.name;
keyboard =
@ -16,18 +17,18 @@
else "platform";
xdgPics =
config.xdg.userDirs.pictures;
ifLaptop = lib.mkIf (hostId != "c7f6c4a1");
ifLaptop = mkIf (hostId != "c7f6c4a1");
# TODO: make terminal depent on thing outside a module
terminal = lib.getExe pkgs.wezterm;
launcher = lib.getExe pkgs.fuzzel;
terminal = getExe pkgs.wezterm;
launcher = getExe pkgs.fuzzel;
browser = "app.zen_browser.zen";
lockscreen = lib.getExe pkgs.gtklock;
lockscreen = getExe pkgs.gtklock;
in {
options = {
desktop.niri.enable =
lib.mkEnableOption "enable niri desktop";
mkEnableOption "enable niri desktop";
};
config = lib.mkIf cfg.enable {
config = mkIf cfg.enable {
stylix.targets = {
waybar.enable = false;
wpaperd.enable = true;
@ -274,7 +275,7 @@ in {
match-mode = "fuzzy";
icon-theme = "${config.dconf.settings."org/gnome/desktop/interface".icon-theme}";
};
border = lib.mkDefault {
border = mkDefault {
width = 3;
radius = 12;
};
@ -1039,7 +1040,7 @@ in {
Service =
graphicalService.Service
// {
Environment = lib.mkForce "QT_QPA_PLATFORM=wayland";
Environment = mkForce "QT_QPA_PLATFORM=wayland";
};
};
xwayland-satellite = mkGraphicalService {
@ -1047,12 +1048,12 @@ in {
graphicalService.Service
// {
Type = "simple";
ExecStart = lib.getExe pkgs.xwayland-satellite + " :123";
ExecStart = getExe pkgs.xwayland-satellite + " :123";
};
};
wpaperd = mkGraphicalService {
Service =
lib.mkDefault graphicalService.Service;
mkDefault graphicalService.Service;
};
gnome-polkit-agent = mkGraphicalService {
Service =

View File

@ -3,8 +3,8 @@
config,
lib,
...
}:
with lib; let
}: let
inherit (lib) mkIf mkEnableOption;
cfg = config.console.joshuto;
in {
options = {
@ -204,7 +204,7 @@ in {
# '';
# };
# in
lib.mkIf cfg.enable {
mkIf cfg.enable {
home.packages = [pkgs.file];
programs.joshuto = {
enable = true;
@ -223,7 +223,7 @@ in {
column_ratio = [1 5 2];
};
preview = {
# preview_script = lib.getExe pkgs.pistol;
# preview_script = getExe pkgs.pistol;
use_xdg_thumbs = true;
xdg_thumb_size = "xxlarge";
};

View File

@ -3,8 +3,8 @@
config,
lib,
...
}:
with lib; let
}: let
inherit (lib) mkIf mkEnableOption getExe;
cfg = config.editor.helix;
in {
options = {
@ -61,7 +61,7 @@ in {
};
};
languages = {
language-server = with lib; {
language-server = {
clangd.command = "${pkgs.clang-tools}/bin/clangd";
markdown-oxide.command = getExe pkgs.markdown-oxide;
# nil.command = getExe pkgs.nil;
@ -74,7 +74,7 @@ in {
{
name = "nix";
auto-format = true;
formatter.command = lib.getExe pkgs.alejandra;
formatter.command = getExe pkgs.alejandra;
language-servers = ["nixd"];
}
# {
@ -86,7 +86,7 @@ in {
{
name = "typst";
auto-format = true;
formatter.command = lib.getExe pkgs.typstyle;
formatter.command = getExe pkgs.typstyle;
language-servers = ["tinymist"];
}
{
@ -109,7 +109,7 @@ in {
# name = "rust";
# auto-format = true;
# language-servers = ["rust-analyzer"];
# formatter.command = lib.getExe pkgs.rustfmt;
# formatter.command = getExe pkgs.rustfmt;
# }
];
};

View File

@ -1,15 +1,16 @@
{
pkgs,
# pkgs-51b85c,
lib,
config,
lib,
pkgs,
...
}: {
}: let
inherit (lib) mkIf mkEnableOption;
in {
options = {
editor.neovim.enable =
lib.mkEnableOption "enable neovim text editor";
mkEnableOption "enable neovim text editor";
};
config = lib.mkIf config.editors.neovim.enable {
config = mkIf config.editors.neovim.enable {
# stylix.targets.nixvim.enable = true;
home.packages = with pkgs; [neovide];
programs.nixvim = {

View File

@ -3,8 +3,8 @@
pkgs,
lib,
...
}:
with lib; let
}: let
inherit (lib) mkIf mkEnableOption mkForce getExe;
cfg = config.editor.zed;
in {
options = {
@ -22,8 +22,8 @@ in {
];
userSettings = {
vim_mode = true;
ui_font_size = lib.mkForce 16;
buffer_font_size = lib.mkForce 16;
ui_font_size = mkForce 16;
buffer_font_size = mkForce 16;
features = {inline_completion_provider = "none";};
auto_update = false;
languages = {
@ -33,13 +33,13 @@ in {
"nixd"
];
formatter = {
external.command = lib.getExe pkgs.alejandra;
external.command = getExe pkgs.alejandra;
};
};
"Rust" = {
formatter = {
external = {
command = lib.getExe pkgs.rustfmt;
command = getExe pkgs.rustfmt;
arguments = ["--edition" "2021"];
};
};
@ -49,7 +49,7 @@ in {
format_on_save = "on";
formatter = {
external = {
command = lib.getExe pkgs.typstyle;
command = getExe pkgs.typstyle;
arguments = ["-i" "{buffer_path}"];
};
};
@ -76,39 +76,39 @@ in {
rust-analyzer = {
binary = {
arguments = [];
path = lib.getExe pkgs.rust-analyzer;
path = getExe pkgs.rust-analyzer;
};
};
ruff = {
binary = {
arguments = [];
path = lib.getExe pkgs.ruff;
path = getExe pkgs.ruff;
};
};
nixd = {
binary = {
arguments = [];
path = lib.getExe pkgs.nixd;
path = getExe pkgs.nixd;
};
initialization_options.formatting.command = [(lib.getExe pkgs.alejandra)];
initialization_options.formatting.command = [(getExe pkgs.alejandra)];
};
nil = {
binary = {
arguments = [];
path = lib.getExe pkgs.nil;
path = getExe pkgs.nil;
};
initialization_options.formatting.command = [(lib.getExe pkgs.alejandra)];
initialization_options.formatting.command = [(getExe pkgs.alejandra)];
};
texlab = {
binary = {
arguments = [];
path = lib.getExe pkgs.texlab;
path = getExe pkgs.texlab;
};
};
tinymist = {
binary = {
arguments = [];
path = lib.getExe pkgs.tinymist;
path = getExe pkgs.tinymist;
};
};
};

View File

@ -5,6 +5,7 @@
lib,
...
}: let
inherit (lib) mkIf mkEnableOption;
cfg = config.desktop.cosmic;
in {
imports = with inputs; [
@ -12,9 +13,9 @@ in {
];
options = {
desktop.cosmic.enable =
lib.mkEnableOption "enable cosmic desktop";
mkEnableOption "enable cosmic desktop";
};
config = lib.mkIf cfg.enable {
config = mkIf cfg.enable {
sound.pipewire.enable = true;
nix.settings = {
substituters = ["https://cosmic.cachix.org/"];

View File

@ -1,7 +1,8 @@
{
imports = [
./locale.nix
./opentabletdriver.nix
./qmk-vial.nix
./locale.nix
./stylix.nix
];
}

View File

@ -2,27 +2,31 @@
config,
lib,
...
}: {
}: let
inherit (lib) mkIf mkEnableOption;
in {
options = {
locale.ukrainian.enable =
lib.mkEnableOption "enables ukrainian locale";
mkEnableOption "enables ukrainian locale";
};
config = lib.mkIf config.locale.ukrainian.enable {
i18n = {
defaultLocale = "uk_UA.UTF-8";
config = mkIf config.locale.ukrainian.enable {
i18n = let
locale = "uk_UA.UTF-8";
in {
defaultLocale = locale;
extraLocaleSettings = {
LC_CTYPE = "uk_UA.UTF-8";
LC_NUMERIC = "uk_UA.UTF-8";
LC_TIME = "uk_UA.UTF-8";
LC_ADDRESS = locale;
LC_COLLATE = "en_US.UTF-8";
LC_MONETARY = "uk_UA.UTF-8";
LC_MESSAGES = "uk_UA.UTF-8";
LC_PAPER = "uk_UA.UTF-8";
LC_NAME = "uk_UA.UTF-8";
LC_ADDRESS = "uk_UA.UTF-8";
LC_TELEPHONE = "uk_UA.UTF-8";
LC_MEASUREMENT = "uk_UA.UTF-8";
LC_IDENTIFICATION = "uk_UA.UTF-8";
LC_CTYPE = locale;
LC_IDENTIFICATION = locale;
LC_MEASUREMENT = locale;
LC_MESSAGES = locale;
LC_MONETARY = locale;
LC_NAME = locale;
LC_NUMERIC = locale;
LC_PAPER = locale;
LC_TELEPHONE = locale;
LC_TIME = locale;
};
};
};

View File

@ -2,12 +2,14 @@
config,
lib,
...
}: {
}: let
inherit (lib) mkIf mkEnableOption;
in {
options = {
opentabletdriver.enable =
lib.mkEnableOption "enables opentabletdriver";
mkEnableOption "enables opentabletdriver";
};
config = lib.mkIf config.opentabletdriver.enable {
config = mkIf config.opentabletdriver.enable {
hardware.opentabletdriver = {
enable = true;
daemon.enable = true;

View File

@ -1,16 +1,16 @@
{
pkgs,
lib,
config,
lib,
...
}: {
}: let
inherit (lib) mkIf mkEnableOption;
in {
options = {
qmk-vial.enable =
lib.mkEnableOption "adds a udev rule for vial keyboards";
mkEnableOption "adds a udev rule for vial keyboards";
};
config = lib.mkIf config.qmk-vial.enable {
config = mkIf config.qmk-vial.enable {
services.udev.extraRules = ''
#vial rule
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0660", GROUP="users", TAG+="uaccess", TAG+="udev-acl"
'';
};

View File

@ -0,0 +1,139 @@
{
config,
inputs,
lib,
pkgs,
...
}: let
inherit (lib) mkEnableOption mkOption mkIf;
inherit (lib) optionalAttrs;
inherit (lib.types) bool str;
inherit (config.system) stateVersion;
cfg = config.module.stylix;
cursorSize = 32;
iosevkaPackage =
if stateVersion == "24.11"
then pkgs.nerdfonts.override {fonts = ["Iosevka"];}
else pkgs.nerd-fonts.iosevka;
iosevkaTermPackage =
if stateVersion == "24.11"
then pkgs.nerdfonts.override {fonts = ["Iosevka Term"];}
else pkgs.nerd-fonts.iosevka-term;
themes = {
nord = {
polarity = "dark";
scheme = "${pkgs.base16-schemes}/share/themes/nord.yaml";
wallpaper = builtins.fetchurl {
url = "https://w.wallhaven.cc/full/l8/wallhaven-l8l9gq.png";
name = "wallhaven-l8l9gq.png";
sha256 = "0ypr44sg0fn55m1b52dgr1nnscpi2p6rfkjsm7vvrdqw7bafbx2z";
};
serif = {
package = iosevkaPackage;
name = "Iosevka Nerd Font Propo";
};
monospace = {
package = iosevkaTermPackage;
name = "IosevkaTerm Nerd Font Mono";
};
cursor = {
package = pkgs.nordzy-cursor-theme;
name = "Nordzy-cursors";
};
};
nord-light = {
polarity = "light";
scheme = "${pkgs.base16-schemes}/share/themes/nord-light.yaml";
wallpaper = builtins.fetchurl {
url = "https://w.wallhaven.cc/full/l8/wallhaven-l8l9gq.png";
name = "wallhaven-l8l9gq.png";
sha256 = "0ypr44sg0fn55m1b52dgr1nnscpi2p6rfkjsm7vvrdqw7bafbx2z";
};
serif = {
package = iosevkaPackage;
name = "Iosevka Nerd Font Propo";
};
monospace = {
package = iosevkaTermPackage;
name = "IosevkaTerm Nerd Font Mono";
};
cursor = {
package = pkgs.nordzy-cursor-theme;
name = "Nordzy-cursors-white";
};
};
};
in {
imports = with inputs; [
stylix.nixosModules.stylix
];
options = {
module.stylix = {
enable = mkEnableOption "enable stylix";
useCursor = mkOption {
type = bool;
default = true;
description = "enable cursor settings";
};
theme = mkOption {
type = str;
default = "nord";
};
};
};
config = mkIf cfg.enable {
stylix =
{
enable = true;
image = themes.${cfg.theme}.wallpaper;
autoEnable = true;
polarity = themes.${cfg.theme}.polarity;
base16Scheme = themes.${cfg.theme}.scheme;
opacity = {
applications = 1.0;
terminal = 1.0;
popups = 1.0;
desktop = 1.0;
};
fonts = {
sizes = {
applications = 13;
terminal = 13;
popups = 14;
desktop = 13;
};
serif = {
inherit (themes.${cfg.theme}.serif) package name;
};
sansSerif = config.stylix.fonts.serif;
monospace = {
inherit (themes.${cfg.theme}.monospace) package name;
};
emoji = config.stylix.fonts.serif;
};
}
// optionalAttrs cfg.useCursor {
cursor = {
inherit (themes.${cfg.theme}.cursor) package name;
size = cursorSize;
};
};
};
}

View File

@ -3,15 +3,15 @@
lib,
pkgs,
...
}:
with lib; let
}: let
inherit (lib) mkIf mkEnableOption mkDefault;
cfg = config.security.basic;
in {
options = {
security.basic.enable =
lib.mkEnableOption "enable basic security";
mkEnableOption "enable basic security";
};
config = lib.mkIf cfg.enable {
config = mkIf cfg.enable {
security = {
sudo.enable = false;
# doas.enable = true;
@ -36,7 +36,7 @@ in {
}
});
'';
apparmor.enable = lib.mkDefault true;
apparmor.enable = mkDefault true;
};
environment.systemPackages = with pkgs; [
@ -85,6 +85,6 @@ in {
"ufs"
];
nix.settings.allowed-users = lib.mkDefault ["@users"];
nix.settings.allowed-users = mkDefault ["@users"];
};
}