Added Guard for Server Configuration; Builds are all successfull
This commit is contained in:
53
home/catppuccin.nix
Normal file
53
home/catppuccin.nix
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
isDarwin,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
imports = [ inputs.catppuccin.homeModules.catppuccin ];
|
||||||
|
|
||||||
|
catppuccin = {
|
||||||
|
enable = false;
|
||||||
|
accent = "sky";
|
||||||
|
flavor = "mocha";
|
||||||
|
eza.enable = true;
|
||||||
|
fzf.enable = true;
|
||||||
|
bat.enable = true;
|
||||||
|
element-desktop = lib.mkIf (!isDarwin) {
|
||||||
|
enable = true;
|
||||||
|
accent = "green";
|
||||||
|
};
|
||||||
|
btop.enable = true;
|
||||||
|
cava = {
|
||||||
|
enable = true;
|
||||||
|
transparent = true;
|
||||||
|
};
|
||||||
|
kitty.enable = true;
|
||||||
|
lazygit.enable = true;
|
||||||
|
yazi.enable = true;
|
||||||
|
fish.enable = true;
|
||||||
|
cursors = lib.mkIf (!isDarwin) {
|
||||||
|
enable = true;
|
||||||
|
accent = "sapphire";
|
||||||
|
};
|
||||||
|
hyprland = lib.mkIf (!isDarwin) { enable = true; };
|
||||||
|
hyprlock = lib.mkIf (!isDarwin) {
|
||||||
|
enable = true;
|
||||||
|
useDefaultConfig = false;
|
||||||
|
};
|
||||||
|
waybar = lib.mkIf (!isDarwin) {
|
||||||
|
enable = true;
|
||||||
|
mode = "createLink";
|
||||||
|
};
|
||||||
|
mako.enable = lib.mkIf (!isDarwin) true;
|
||||||
|
mpv.enable = lib.mkIf (!isDarwin) true;
|
||||||
|
newsboat.enable = true;
|
||||||
|
mangohud.enable = lib.mkIf (!isDarwin) true;
|
||||||
|
gtk.icon.enable = lib.mkIf (!isDarwin) true;
|
||||||
|
kvantum = lib.mkIf (!isDarwin) {
|
||||||
|
enable = true;
|
||||||
|
apply = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -5,6 +5,7 @@
|
|||||||
self,
|
self,
|
||||||
lib,
|
lib,
|
||||||
isDarwin,
|
isDarwin,
|
||||||
|
isServer,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
@@ -16,93 +17,37 @@
|
|||||||
./xdg.nix
|
./xdg.nix
|
||||||
./neovim
|
./neovim
|
||||||
./python.nix
|
./python.nix
|
||||||
|
inputs.sops-nix.homeManagerModules.sops
|
||||||
|
]
|
||||||
|
++ lib.optionals (!isDarwin && !isServer) [
|
||||||
|
./desktop
|
||||||
|
./catppuccin.nix
|
||||||
|
]
|
||||||
|
++ lib.optionals isDarwin [
|
||||||
|
./desktop/sketchybar
|
||||||
|
./catppuccin.nix
|
||||||
|
]
|
||||||
|
++ lib.optionals (!isServer) [
|
||||||
./nixcord.nix
|
./nixcord.nix
|
||||||
./spicetify.nix
|
./spicetify.nix
|
||||||
./floorp.nix
|
./floorp.nix
|
||||||
./obsidian.nix
|
./obsidian.nix
|
||||||
inputs.sops-nix.homeManagerModules.sops
|
|
||||||
]
|
|
||||||
++ lib.optionals (!isDarwin) [ ./desktop ]
|
|
||||||
++ lib.optionals isDarwin [
|
|
||||||
./desktop/sketchybar
|
|
||||||
inputs.catppuccin.homeModules.catppuccin
|
|
||||||
];
|
];
|
||||||
|
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
#targets.darwin.copyApps.enableChecks = isDarwin;
|
|
||||||
|
|
||||||
catppuccin = {
|
|
||||||
enable = false;
|
|
||||||
accent = "sky";
|
|
||||||
flavor = "mocha";
|
|
||||||
|
|
||||||
eza.enable = true;
|
|
||||||
fzf.enable = true;
|
|
||||||
bat.enable = true;
|
|
||||||
|
|
||||||
element-desktop = lib.mkIf (!isDarwin) {
|
|
||||||
enable = true;
|
|
||||||
accent = "green";
|
|
||||||
};
|
|
||||||
|
|
||||||
btop.enable = true;
|
|
||||||
|
|
||||||
cava = lib.mkIf (!isDarwin) {
|
|
||||||
enable = true;
|
|
||||||
transparent = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
kitty.enable = true;
|
|
||||||
lazygit.enable = true;
|
|
||||||
yazi.enable = true;
|
|
||||||
fish.enable = true;
|
|
||||||
|
|
||||||
cursors = lib.mkIf (!isDarwin) {
|
|
||||||
enable = true;
|
|
||||||
accent = "sapphire";
|
|
||||||
};
|
|
||||||
|
|
||||||
hyprland = lib.mkIf (!isDarwin) { enable = true; };
|
|
||||||
|
|
||||||
hyprlock = lib.mkIf (!isDarwin) {
|
|
||||||
enable = true;
|
|
||||||
useDefaultConfig = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
waybar = lib.mkIf (!isDarwin) {
|
|
||||||
enable = true;
|
|
||||||
mode = "createLink";
|
|
||||||
};
|
|
||||||
|
|
||||||
mako.enable = lib.mkIf (!isDarwin) true;
|
|
||||||
mpv.enable = lib.mkIf (!isDarwin) true;
|
|
||||||
newsboat.enable = lib.mkIf (!isDarwin) true;
|
|
||||||
mangohud.enable = lib.mkIf (!isDarwin) true;
|
|
||||||
|
|
||||||
gtk.icon.enable = lib.mkIf (!isDarwin) true;
|
|
||||||
|
|
||||||
kvantum = lib.mkIf (!isDarwin) {
|
|
||||||
enable = true;
|
|
||||||
apply = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
home = {
|
home = {
|
||||||
|
|
||||||
# activation.checkAppManagementPermission = lib.mkForce "";
|
|
||||||
username = primaryUser;
|
username = primaryUser;
|
||||||
stateVersion = "26.05";
|
stateVersion = "26.05";
|
||||||
sessionVariables = lib.mkIf (!isDarwin) {
|
sessionVariables = lib.mkIf (!isDarwin && !isServer) {
|
||||||
GROQ_API_KEY = config.sops.secrets.GROQ_API_KEY.path;
|
GROQ_API_KEY = config.sops.secrets.GROQ_API_KEY.path;
|
||||||
OPENWEATHER_API_KEY = config.sops.secrets.OPENWEATHER_API_KEY.path;
|
OPENWEATHER_API_KEY = config.sops.secrets.OPENWEATHER_API_KEY.path;
|
||||||
};
|
};
|
||||||
|
file = lib.mkIf (!isServer) {
|
||||||
file = {
|
|
||||||
"Pictures/Avatar" = {
|
"Pictures/Avatar" = {
|
||||||
source = "${self}/assets/avatar";
|
source = "${self}/assets/avatar";
|
||||||
recursive = true;
|
recursive = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
"Pictures/Wallpapers" = {
|
"Pictures/Wallpapers" = {
|
||||||
source = "${self}/assets/wallpapers";
|
source = "${self}/assets/wallpapers";
|
||||||
recursive = true;
|
recursive = true;
|
||||||
@@ -118,7 +63,6 @@
|
|||||||
"/Users/${primaryUser}/.config/nix/secrets/keys.txt"
|
"/Users/${primaryUser}/.config/nix/secrets/keys.txt"
|
||||||
else
|
else
|
||||||
"/home/${primaryUser}/.config/nix/secrets/keys.txt";
|
"/home/${primaryUser}/.config/nix/secrets/keys.txt";
|
||||||
|
|
||||||
secrets = {
|
secrets = {
|
||||||
GROQ_API_KEY = { };
|
GROQ_API_KEY = { };
|
||||||
OPENWEATHER_API_KEY = { };
|
OPENWEATHER_API_KEY = { };
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
{ pkgs, inputs, ... }:
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
inputs.catppuccin.homeModules.catppuccin
|
|
||||||
./hyprland
|
./hyprland
|
||||||
./rofi
|
./rofi
|
||||||
./waybar
|
./waybar
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
{ pkgs, ... }: {
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
# LSP configuration: Language Server Protocol provides IDE features
|
# LSP configuration: Language Server Protocol provides IDE features
|
||||||
# like autocomplete, go-to-definition, diagnostics, and more.
|
# like autocomplete, go-to-definition, diagnostics, and more.
|
||||||
programs.nixvim = {
|
programs.nixvim = {
|
||||||
@@ -80,6 +81,10 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
# Install LSP servers
|
# Install LSP servers
|
||||||
extraPackages = with pkgs; [ lua-language-server nil rust-analyzer ];
|
extraPackages = with pkgs; [
|
||||||
|
lua-language-server
|
||||||
|
nil
|
||||||
|
rust-analyzer
|
||||||
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
19
nixos/catppuccin.nix
Normal file
19
nixos/catppuccin.nix
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
{ inputs, ... }:
|
||||||
|
{
|
||||||
|
imports = [ inputs.catppuccin.nixosModules.catppuccin ];
|
||||||
|
|
||||||
|
catppuccin = {
|
||||||
|
enable = true;
|
||||||
|
accent = "sky";
|
||||||
|
flavor = "mocha";
|
||||||
|
cache.enable = true;
|
||||||
|
cursors = {
|
||||||
|
enable = true;
|
||||||
|
accent = "sapphire";
|
||||||
|
};
|
||||||
|
fcitx5.enable = false;
|
||||||
|
forgejo.enable = false;
|
||||||
|
gitea.enable = false;
|
||||||
|
sddm.enable = false;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,43 +1,28 @@
|
|||||||
{
|
{
|
||||||
pkgs,
|
pkgs,
|
||||||
inputs,
|
inputs,
|
||||||
|
lib,
|
||||||
primaryUser,
|
primaryUser,
|
||||||
|
isServer,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./fonts.nix
|
./fonts.nix
|
||||||
./sops.nix
|
./sops.nix
|
||||||
|
./locale.nix
|
||||||
|
./tailscale.nix
|
||||||
|
./ssh.nix
|
||||||
|
]
|
||||||
|
++ lib.optionals (!isServer) [
|
||||||
./regreet.nix
|
./regreet.nix
|
||||||
./plymouth.nix
|
./plymouth.nix
|
||||||
./audio.nix
|
./audio.nix
|
||||||
./ssh.nix
|
|
||||||
./locale.nix
|
|
||||||
./tailscale.nix
|
|
||||||
./virt.nix
|
|
||||||
./webcam.nix
|
./webcam.nix
|
||||||
|
./virt.nix
|
||||||
inputs.catppuccin.nixosModules.catppuccin
|
./catppuccin.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
catppuccin = {
|
|
||||||
enable = true;
|
|
||||||
accent = "sky";
|
|
||||||
flavor = "mocha";
|
|
||||||
cache.enable = true;
|
|
||||||
|
|
||||||
cursors = {
|
|
||||||
enable = true;
|
|
||||||
accent = "sapphire";
|
|
||||||
};
|
|
||||||
|
|
||||||
fcitx5.enable = false;
|
|
||||||
forgejo.enable = false;
|
|
||||||
gitea.enable = false;
|
|
||||||
sddm.enable = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
# nix config
|
|
||||||
nix = {
|
nix = {
|
||||||
settings = {
|
settings = {
|
||||||
experimental-features = [
|
experimental-features = [
|
||||||
@@ -59,8 +44,6 @@
|
|||||||
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
# Garbage collection
|
|
||||||
gc = {
|
gc = {
|
||||||
automatic = true;
|
automatic = true;
|
||||||
dates = "weekly";
|
dates = "weekly";
|
||||||
@@ -68,39 +51,38 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Disable Docs
|
|
||||||
documentation = {
|
documentation = {
|
||||||
enable = true;
|
enable = true;
|
||||||
doc.enable = false; # Skip large documentation
|
doc.enable = false;
|
||||||
man.enable = false; # Keep man pages
|
man.enable = false;
|
||||||
info.enable = false; # Skip info pages
|
info.enable = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
nixpkgs.config = {
|
nixpkgs.config.allowUnfree = true;
|
||||||
allowUnfree = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
programs = {
|
programs = {
|
||||||
fish.enable = true;
|
fish.enable = true;
|
||||||
|
}
|
||||||
|
// lib.optionalAttrs (!isServer) {
|
||||||
|
dconf.enable = true;
|
||||||
hyprland = {
|
hyprland = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
||||||
};
|
};
|
||||||
steam.enable = true;
|
steam.enable = true;
|
||||||
dconf.enable = true;
|
|
||||||
appimage = {
|
appimage = {
|
||||||
enable = true;
|
enable = true;
|
||||||
binfmt = true;
|
binfmt = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
security = {
|
security = lib.mkIf (!isServer) {
|
||||||
pam.services.swaylock = { };
|
pam.services.swaylock = { };
|
||||||
polkit.enable = true;
|
polkit.enable = true;
|
||||||
apparmor.enable = false;
|
apparmor.enable = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
services.gnome = {
|
services.gnome = lib.mkIf (!isServer) {
|
||||||
tinysparql.enable = true;
|
tinysparql.enable = true;
|
||||||
localsearch.enable = true;
|
localsearch.enable = true;
|
||||||
};
|
};
|
||||||
@@ -111,6 +93,8 @@
|
|||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
extraGroups = [
|
extraGroups = [
|
||||||
"wheel"
|
"wheel"
|
||||||
|
]
|
||||||
|
++ lib.optionals (!isServer) [
|
||||||
"video"
|
"video"
|
||||||
"audio"
|
"audio"
|
||||||
"libvirtd"
|
"libvirtd"
|
||||||
|
|||||||
Reference in New Issue
Block a user