init(release): desktop template -> desktop wip
This commit is contained in:
parent
5bc78a031f
commit
1ae2855bb1
18 changed files with 63 additions and 92 deletions
|
|
@ -1,7 +1,7 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }: {
|
||||||
{
|
|
||||||
# Browser configurations
|
# Browser configurations
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs;
|
||||||
|
[
|
||||||
firefox
|
firefox
|
||||||
# chromium
|
# chromium
|
||||||
# brave
|
# brave
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
{ pkgs, lib, ... }:
|
{ pkgs, lib, ... }: {
|
||||||
{
|
|
||||||
# Terminal emulators
|
# Terminal emulators
|
||||||
|
|
||||||
# Kitty - GPU-accelerated terminal
|
# Kitty - GPU-accelerated terminal
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
{ lib, pkgs, config, ... }:
|
{ lib, pkgs, config, ... }: {
|
||||||
{
|
|
||||||
# Base desktop user configuration
|
# Base desktop user configuration
|
||||||
|
|
||||||
# GTK theming
|
# GTK theming
|
||||||
|
|
@ -28,7 +27,8 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
# Basic GUI packages
|
# Basic GUI packages
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs;
|
||||||
|
[
|
||||||
# Add common desktop apps here
|
# Add common desktop apps here
|
||||||
# firefox
|
# firefox
|
||||||
# vscodium
|
# vscodium
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
{ ... }:
|
{ ... }: {
|
||||||
{
|
|
||||||
# Wayland compositor configurations
|
# Wayland compositor configurations
|
||||||
# Import the compositor you want to use
|
# Import the compositor you want to use
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
{ lib, pkgs, ... }:
|
{ lib, pkgs, ... }: {
|
||||||
{
|
|
||||||
# Hyprland user configuration
|
# Hyprland user configuration
|
||||||
wayland.windowManager.hyprland = {
|
wayland.windowManager.hyprland = {
|
||||||
enable = lib.mkDefault true;
|
enable = lib.mkDefault true;
|
||||||
|
|
@ -31,14 +30,13 @@
|
||||||
border_size = 2;
|
border_size = 2;
|
||||||
};
|
};
|
||||||
|
|
||||||
decoration = {
|
decoration = { rounding = 8; };
|
||||||
rounding = 8;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Hyprland utilities
|
# Hyprland utilities
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs;
|
||||||
|
[
|
||||||
# wofi # Launcher
|
# wofi # Launcher
|
||||||
# waybar # Status bar
|
# waybar # Status bar
|
||||||
# dunst # Notifications
|
# dunst # Notifications
|
||||||
|
|
|
||||||
|
|
@ -1,14 +1,9 @@
|
||||||
{ lib, pkgs, ... }:
|
{ lib, pkgs, ... }: {
|
||||||
{
|
|
||||||
# Niri user configuration
|
# Niri user configuration
|
||||||
programs.niri = {
|
programs.niri = {
|
||||||
settings = {
|
settings = {
|
||||||
# Minimal config - expand as needed
|
# Minimal config - expand as needed
|
||||||
input = {
|
input = { keyboard.xkb = { layout = "us"; }; };
|
||||||
keyboard.xkb = {
|
|
||||||
layout = "us";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# Example keybinds
|
# Example keybinds
|
||||||
binds = {
|
binds = {
|
||||||
|
|
@ -31,7 +26,8 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
# Niri utilities
|
# Niri utilities
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs;
|
||||||
|
[
|
||||||
# fuzzel # Launcher (recommended for niri)
|
# fuzzel # Launcher (recommended for niri)
|
||||||
# waybar # Status bar
|
# waybar # Status bar
|
||||||
# dunst # Notifications
|
# dunst # Notifications
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
{ lib, ... }:
|
{ lib, ... }: {
|
||||||
{
|
|
||||||
# Modern audio stack - PipeWire replaces PulseAudio + JACK + ALSA
|
# Modern audio stack - PipeWire replaces PulseAudio + JACK + ALSA
|
||||||
services.pipewire = {
|
services.pipewire = {
|
||||||
enable = lib.mkDefault true;
|
enable = lib.mkDefault true;
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
{ lib, ... }:
|
{ lib, ... }: {
|
||||||
{
|
|
||||||
hardware.bluetooth = {
|
hardware.bluetooth = {
|
||||||
enable = lib.mkDefault false; # Enable when needed
|
enable = lib.mkDefault false; # Enable when needed
|
||||||
powerOnBoot = lib.mkDefault true;
|
powerOnBoot = lib.mkDefault true;
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
{ lib, pkgs, ... }:
|
{ lib, pkgs, ... }: {
|
||||||
{
|
|
||||||
# Shared desktop settings (imported by all DEs)
|
# Shared desktop settings (imported by all DEs)
|
||||||
|
|
||||||
# XDG portals for desktop integration
|
# XDG portals for desktop integration
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
{ pkgs, lib, ... }:
|
{ pkgs, lib, ... }: {
|
||||||
{
|
|
||||||
imports = [ ./base.nix ];
|
imports = [ ./base.nix ];
|
||||||
|
|
||||||
# Hyprland - Dynamic tiling Wayland compositor
|
# Hyprland - Dynamic tiling Wayland compositor
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,8 @@
|
||||||
{ pkgs, lib, ... }:
|
{ pkgs, lib, ... }: {
|
||||||
{
|
|
||||||
imports = [ ./base.nix ];
|
imports = [ ./base.nix ];
|
||||||
|
|
||||||
# Niri - Scrollable-tiling Wayland compositor
|
# Niri - Scrollable-tiling Wayland compositor
|
||||||
programs.niri = {
|
programs.niri = { enable = lib.mkDefault true; };
|
||||||
enable = lib.mkDefault true;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Wayland-specific portal
|
# Wayland-specific portal
|
||||||
xdg.portal.wlr.enable = lib.mkDefault true;
|
xdg.portal.wlr.enable = lib.mkDefault true;
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
{ lib, ... }:
|
{ lib, ... }: {
|
||||||
{
|
|
||||||
imports = [ ./base.nix ];
|
imports = [ ./base.nix ];
|
||||||
|
|
||||||
# KDE Plasma 6
|
# KDE Plasma 6
|
||||||
|
|
|
||||||
|
|
@ -1,17 +1,10 @@
|
||||||
{ lib, pkgs, ... }:
|
{ lib, pkgs, ... }: {
|
||||||
{
|
|
||||||
fonts = {
|
fonts = {
|
||||||
enableDefaultPackages = lib.mkDefault true;
|
enableDefaultPackages = lib.mkDefault true;
|
||||||
|
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
# Nerd Fonts for terminal icons
|
# Nerd Fonts for terminal icons
|
||||||
(nerdfonts.override {
|
(nerdfonts.override { fonts = [ "FiraCode" "JetBrainsMono" "Iosevka" ]; })
|
||||||
fonts = [
|
|
||||||
"FiraCode"
|
|
||||||
"JetBrainsMono"
|
|
||||||
"Iosevka"
|
|
||||||
];
|
|
||||||
})
|
|
||||||
|
|
||||||
# Core fonts
|
# Core fonts
|
||||||
noto-fonts
|
noto-fonts
|
||||||
|
|
@ -27,10 +20,7 @@
|
||||||
fontconfig = {
|
fontconfig = {
|
||||||
enable = lib.mkDefault true;
|
enable = lib.mkDefault true;
|
||||||
defaultFonts = {
|
defaultFonts = {
|
||||||
monospace = [
|
monospace = [ "JetBrains Mono" "FiraCode Nerd Font" ];
|
||||||
"JetBrains Mono"
|
|
||||||
"FiraCode Nerd Font"
|
|
||||||
];
|
|
||||||
sansSerif = [ "Noto Sans" ];
|
sansSerif = [ "Noto Sans" ];
|
||||||
serif = [ "Noto Serif" ];
|
serif = [ "Noto Serif" ];
|
||||||
emoji = [ "Noto Color Emoji" ];
|
emoji = [ "Noto Color Emoji" ];
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
{ lib, pkgs, ... }:
|
{ lib, pkgs, ... }: {
|
||||||
{
|
|
||||||
# Hardware acceleration (OpenGL/Vulkan)
|
# Hardware acceleration (OpenGL/Vulkan)
|
||||||
hardware.graphics = {
|
hardware.graphics = {
|
||||||
enable = lib.mkDefault true;
|
enable = lib.mkDefault true;
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
{ ... }:
|
{ ... }: {
|
||||||
{
|
|
||||||
# Desktop user configuration (for Hyprland/Niri setups)
|
# Desktop user configuration (for Hyprland/Niri setups)
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }: {
|
||||||
{
|
|
||||||
# Gaming user configuration (for KDE Plasma)
|
# Gaming user configuration (for KDE Plasma)
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
|
|
@ -12,7 +11,8 @@
|
||||||
];
|
];
|
||||||
|
|
||||||
# Gaming-specific user packages
|
# Gaming-specific user packages
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs;
|
||||||
|
[
|
||||||
# Communication
|
# Communication
|
||||||
# discord
|
# discord
|
||||||
# teamspeak_client
|
# teamspeak_client
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }: {
|
||||||
{
|
|
||||||
# Example desktop development workstation configuration
|
# Example desktop development workstation configuration
|
||||||
# Copy and modify for your actual hardware
|
# Copy and modify for your actual hardware
|
||||||
|
|
||||||
|
|
@ -31,7 +30,8 @@
|
||||||
# hardware.bluetooth.enable = true;
|
# hardware.bluetooth.enable = true;
|
||||||
|
|
||||||
# Development-specific packages
|
# Development-specific packages
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs;
|
||||||
|
[
|
||||||
# Add desktop dev tools here
|
# Add desktop dev tools here
|
||||||
# docker-compose
|
# docker-compose
|
||||||
# k9s
|
# k9s
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }: {
|
||||||
{
|
|
||||||
# Example gaming desktop configuration
|
# Example gaming desktop configuration
|
||||||
# Copy and modify for your actual hardware
|
# Copy and modify for your actual hardware
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue