init(release): desktop template -> desktop wip
This commit is contained in:
parent
a5b3690f90
commit
5bc78a031f
22 changed files with 716 additions and 11 deletions
19
modules/home/rsydn/desktop/apps/browsers.nix
Normal file
19
modules/home/rsydn/desktop/apps/browsers.nix
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
# Browser configurations
|
||||
home.packages = with pkgs; [
|
||||
firefox
|
||||
# chromium
|
||||
# brave
|
||||
];
|
||||
|
||||
# Firefox config (expand as needed)
|
||||
# programs.firefox = {
|
||||
# enable = true;
|
||||
# profiles.default = {
|
||||
# settings = {
|
||||
# "browser.startup.homepage" = "about:home";
|
||||
# };
|
||||
# };
|
||||
# };
|
||||
}
|
||||
28
modules/home/rsydn/desktop/apps/terminals.nix
Normal file
28
modules/home/rsydn/desktop/apps/terminals.nix
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
{ pkgs, lib, ... }:
|
||||
{
|
||||
# Terminal emulators
|
||||
|
||||
# Kitty - GPU-accelerated terminal
|
||||
programs.kitty = {
|
||||
enable = lib.mkDefault false;
|
||||
# theme = "Dracula";
|
||||
# settings = {
|
||||
# font_family = "JetBrains Mono";
|
||||
# font_size = 12;
|
||||
# };
|
||||
};
|
||||
|
||||
# Alacritty - GPU-accelerated terminal
|
||||
programs.alacritty = {
|
||||
enable = lib.mkDefault false;
|
||||
# settings = {
|
||||
# font.normal.family = "JetBrains Mono";
|
||||
# font.size = 12;
|
||||
# };
|
||||
};
|
||||
|
||||
# WezTerm - GPU-accelerated terminal
|
||||
# programs.wezterm = {
|
||||
# enable = false;
|
||||
# };
|
||||
}
|
||||
36
modules/home/rsydn/desktop/base.nix
Normal file
36
modules/home/rsydn/desktop/base.nix
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{ lib, pkgs, config, ... }:
|
||||
{
|
||||
# Base desktop user configuration
|
||||
|
||||
# GTK theming
|
||||
gtk = {
|
||||
enable = lib.mkDefault true;
|
||||
theme = lib.mkDefault {
|
||||
name = "Adwaita-dark";
|
||||
package = pkgs.gnome-themes-extra;
|
||||
};
|
||||
};
|
||||
|
||||
# Qt theming
|
||||
qt = {
|
||||
enable = lib.mkDefault true;
|
||||
platformTheme.name = lib.mkDefault "gtk";
|
||||
style.name = lib.mkDefault "adwaita-dark";
|
||||
};
|
||||
|
||||
# XDG user directories
|
||||
xdg = {
|
||||
enable = true;
|
||||
userDirs = {
|
||||
enable = true;
|
||||
createDirectories = true;
|
||||
};
|
||||
};
|
||||
|
||||
# Basic GUI packages
|
||||
home.packages = with pkgs; [
|
||||
# Add common desktop apps here
|
||||
# firefox
|
||||
# vscodium
|
||||
];
|
||||
}
|
||||
21
modules/home/rsydn/desktop/themes/README.md
Normal file
21
modules/home/rsydn/desktop/themes/README.md
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
# Themes
|
||||
|
||||
Add your theme configurations here. Each theme should set:
|
||||
- GTK theme
|
||||
- Qt theme
|
||||
- Terminal colors
|
||||
- Compositor colors (if applicable)
|
||||
- Wallpapers
|
||||
|
||||
Example structure:
|
||||
```nix
|
||||
# catppuccin.nix
|
||||
{ pkgs, ... }: {
|
||||
gtk.theme = {
|
||||
name = "Catppuccin-Mocha";
|
||||
package = pkgs.catppuccin-gtk;
|
||||
};
|
||||
|
||||
# ... more theme settings
|
||||
}
|
||||
```
|
||||
11
modules/home/rsydn/desktop/wayland/default.nix
Normal file
11
modules/home/rsydn/desktop/wayland/default.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{ ... }:
|
||||
{
|
||||
# Wayland compositor configurations
|
||||
# Import the compositor you want to use
|
||||
|
||||
imports = [
|
||||
# Uncomment the one you want:
|
||||
# ./hyprland
|
||||
# ./niri
|
||||
];
|
||||
}
|
||||
46
modules/home/rsydn/desktop/wayland/hyprland/default.nix
Normal file
46
modules/home/rsydn/desktop/wayland/hyprland/default.nix
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
{ lib, pkgs, ... }:
|
||||
{
|
||||
# Hyprland user configuration
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = lib.mkDefault true;
|
||||
xwayland.enable = lib.mkDefault true;
|
||||
|
||||
settings = {
|
||||
# Minimal config - expand as needed
|
||||
"$mod" = "SUPER";
|
||||
|
||||
# Example keybinds
|
||||
bind = [
|
||||
"$mod, Return, exec, kitty" # Terminal
|
||||
"$mod, Q, killactive"
|
||||
"$mod, M, exit"
|
||||
"$mod, F, fullscreen"
|
||||
"$mod, Space, togglefloating"
|
||||
|
||||
# Move focus
|
||||
"$mod, h, movefocus, l"
|
||||
"$mod, l, movefocus, r"
|
||||
"$mod, k, movefocus, u"
|
||||
"$mod, j, movefocus, d"
|
||||
];
|
||||
|
||||
# Example settings
|
||||
general = {
|
||||
gaps_in = 5;
|
||||
gaps_out = 10;
|
||||
border_size = 2;
|
||||
};
|
||||
|
||||
decoration = {
|
||||
rounding = 8;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Hyprland utilities
|
||||
home.packages = with pkgs; [
|
||||
# wofi # Launcher
|
||||
# waybar # Status bar
|
||||
# dunst # Notifications
|
||||
];
|
||||
}
|
||||
39
modules/home/rsydn/desktop/wayland/niri/default.nix
Normal file
39
modules/home/rsydn/desktop/wayland/niri/default.nix
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
{ lib, pkgs, ... }:
|
||||
{
|
||||
# Niri user configuration
|
||||
programs.niri = {
|
||||
settings = {
|
||||
# Minimal config - expand as needed
|
||||
input = {
|
||||
keyboard.xkb = {
|
||||
layout = "us";
|
||||
};
|
||||
};
|
||||
|
||||
# Example keybinds
|
||||
binds = {
|
||||
"Mod+Return".action.spawn = [ "kitty" ];
|
||||
"Mod+Q".action.close-window = { };
|
||||
"Mod+F".action.fullscreen-window = { };
|
||||
|
||||
# Focus movement
|
||||
"Mod+H".action.focus-column-left = { };
|
||||
"Mod+L".action.focus-column-right = { };
|
||||
"Mod+J".action.focus-window-down = { };
|
||||
"Mod+K".action.focus-window-up = { };
|
||||
};
|
||||
|
||||
layout = {
|
||||
gaps = 8;
|
||||
center-focused-column = "never";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Niri utilities
|
||||
home.packages = with pkgs; [
|
||||
# fuzzel # Launcher (recommended for niri)
|
||||
# waybar # Status bar
|
||||
# dunst # Notifications
|
||||
];
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue