big refactor
This commit is contained in:
commit
76d68230f6
81 changed files with 3065 additions and 0 deletions
24
modules/features/system/boot.nix
Normal file
24
modules/features/system/boot.nix
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
{ inputs, pkgs, libs, ... }: let
|
||||
background = libs.root "/assets/grub/background.png";
|
||||
baseTheme = inputs.honkai-railway-grub-theme.packages.${pkgs.stdenv.hostPlatform.system}.cyrene-grub-theme;
|
||||
in {
|
||||
boot = {
|
||||
loader = {
|
||||
efi.canTouchEfiVariables = true;
|
||||
|
||||
grub = rec {
|
||||
enable = true;
|
||||
device = "nodev";
|
||||
efiSupport = true;
|
||||
useOSProber = true;
|
||||
splashImage = background;
|
||||
theme = pkgs.runCommand "my-grub-theme" { } ''
|
||||
mkdir -p $out
|
||||
cp -r ${baseTheme}/* $out/
|
||||
chmod -R u+w $out
|
||||
cp ${background} $out/background.png
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
5
modules/features/system/flatpak.nix
Normal file
5
modules/features/system/flatpak.nix
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
{ lib, config, ... }: {
|
||||
services.flatpak = lib.mkIf config.device.flatpak.enable {
|
||||
enable = true;
|
||||
};
|
||||
}
|
||||
5
modules/features/system/gdm.nix
Normal file
5
modules/features/system/gdm.nix
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
{ lib, config, ... }: {
|
||||
services = lib.mkIf config.device.dm.gdm.enable {
|
||||
displayManager.gdm.enable = true;
|
||||
};
|
||||
}
|
||||
5
modules/features/system/gnome.nix
Normal file
5
modules/features/system/gnome.nix
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
{ lib, config, ... }: {
|
||||
services = lib.mkIf config.device.de.gnome.enable {
|
||||
desktopManager.gnome.enable = true;
|
||||
};
|
||||
}
|
||||
5
modules/features/system/hyprland.nix
Normal file
5
modules/features/system/hyprland.nix
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
{ lib, config, ... }: {
|
||||
programs.hyprland = lib.mkIf config.device.wm.hyprland.enable {
|
||||
enable = true;
|
||||
};
|
||||
}
|
||||
10
modules/features/system/input-method.nix
Normal file
10
modules/features/system/input-method.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{ pkgs, ... }: {
|
||||
i18n.inputMethod = {
|
||||
enable = true;
|
||||
type = "fcitx5";
|
||||
fcitx5.addons = with pkgs; [
|
||||
# fcitx5-bamboo
|
||||
kdePackages.fcitx5-unikey
|
||||
];
|
||||
};
|
||||
}
|
||||
6
modules/features/system/kde-plasma.nix
Normal file
6
modules/features/system/kde-plasma.nix
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{ lib, config, ... }: {
|
||||
services = lib.mkIf config.device.de.kdePlasma.enable {
|
||||
desktopManager.plasma6.enable = true;
|
||||
xserver.enable = true;
|
||||
};
|
||||
}
|
||||
4
modules/features/system/niri.nix
Normal file
4
modules/features/system/niri.nix
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
{ lib, config, ... }: {
|
||||
programs.niri.enable = lib.mkIf config.device.wm.niri.enable true;
|
||||
services.xserver.enable = lib.mkIf config.device.wm.niri.enable true;
|
||||
}
|
||||
14
modules/features/system/nix-dl.nix
Normal file
14
modules/features/system/nix-dl.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
{ pkgs, ... }: {
|
||||
programs.nix-ld = {
|
||||
enable = true;
|
||||
libraries = with pkgs; [
|
||||
stdenv.cc.cc
|
||||
zlib
|
||||
brotli
|
||||
unixODBC
|
||||
zstd
|
||||
glib
|
||||
stdenv.cc.cc.lib
|
||||
];
|
||||
};
|
||||
}
|
||||
67
modules/features/system/packages.nix
Normal file
67
modules/features/system/packages.nix
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
{
|
||||
pkgs,
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{
|
||||
environment.systemPackages =
|
||||
with pkgs;
|
||||
[
|
||||
git
|
||||
vim
|
||||
wget
|
||||
tree
|
||||
btop
|
||||
ffmpeg-full
|
||||
nodejs
|
||||
bun
|
||||
brightnessctl
|
||||
|
||||
quickshell
|
||||
bluetuith
|
||||
lxqt.pavucontrol-qt
|
||||
nwg-look
|
||||
|
||||
(pkgs.catppuccin-kde.override {
|
||||
flavour = [ "mocha" ];
|
||||
accents = [ "sapphire" ];
|
||||
})
|
||||
|
||||
(pkgs.catppuccin-gtk.override {
|
||||
variant = "mocha";
|
||||
accents = [ "sapphire" ];
|
||||
size = "compact";
|
||||
})
|
||||
]
|
||||
++ (
|
||||
with pkgs;
|
||||
with kdePackages;
|
||||
[
|
||||
dolphin
|
||||
kate
|
||||
qt5compat
|
||||
qtdeclarative
|
||||
libsForQt5.qt5.qtgraphicaleffects
|
||||
qtimageformats
|
||||
qtsvg
|
||||
qtmultimedia
|
||||
kde-gtk-config
|
||||
qtdeclarative
|
||||
kirigami
|
||||
ksvg
|
||||
qtbase
|
||||
plasma5support
|
||||
qttools
|
||||
plasma-sdk
|
||||
]
|
||||
)
|
||||
++ (lib.optionals config.device.wm.hyprland.enable (
|
||||
with pkgs;
|
||||
[
|
||||
xdg-desktop-portal
|
||||
xdg-desktop-portal-wlr
|
||||
xdg-desktop-portal-hyprland
|
||||
]
|
||||
));
|
||||
}
|
||||
24
modules/features/system/sddm.nix
Normal file
24
modules/features/system/sddm.nix
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
{ pkgs, lib, config, ... }: let
|
||||
custom-sddm-astronaut = pkgs.sddm-astronaut.override {
|
||||
embeddedTheme = config.device.dm.sddm.theme;
|
||||
};
|
||||
in {
|
||||
services.displayManager.sddm = lib.mkIf config.device.dm.sddm.enable {
|
||||
enable = true;
|
||||
wayland.enable = true;
|
||||
extraPackages = with pkgs; [
|
||||
custom-sddm-astronaut
|
||||
];
|
||||
theme = "sddm-astronaut-theme";
|
||||
settings = {
|
||||
Theme = {
|
||||
Current = "sddm-astronaut-theme";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
custom-sddm-astronaut
|
||||
kdePackages.qtmultimedia
|
||||
];
|
||||
}
|
||||
5
modules/features/system/steam.nix
Normal file
5
modules/features/system/steam.nix
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
{ lib, config, ... }: {
|
||||
programs.steam = lib.mkIf config.device.programs.steam.enable {
|
||||
enable = true;
|
||||
};
|
||||
}
|
||||
Reference in a new issue