init(release): desktop template -> desktop wip

This commit is contained in:
Rasyidan Akbar F. 2025-10-24 11:09:00 +07:00
commit 1ae2855bb1
18 changed files with 63 additions and 92 deletions

View file

@ -1,11 +1,11 @@
{ pkgs, ... }:
{
{ pkgs, ... }: {
# Browser configurations
home.packages = with pkgs; [
firefox
# chromium
# brave
];
home.packages = with pkgs;
[
firefox
# chromium
# brave
];
# Firefox config (expand as needed)
# programs.firefox = {

View file

@ -1,5 +1,4 @@
{ pkgs, lib, ... }:
{
{ pkgs, lib, ... }: {
# Terminal emulators
# Kitty - GPU-accelerated terminal

View file

@ -1,5 +1,4 @@
{ lib, pkgs, config, ... }:
{
{ lib, pkgs, config, ... }: {
# Base desktop user configuration
# GTK theming
@ -28,9 +27,10 @@
};
# Basic GUI packages
home.packages = with pkgs; [
# Add common desktop apps here
# firefox
# vscodium
];
home.packages = with pkgs;
[
# Add common desktop apps here
# firefox
# vscodium
];
}

View file

@ -1,5 +1,4 @@
{ ... }:
{
{ ... }: {
# Wayland compositor configurations
# Import the compositor you want to use

View file

@ -1,5 +1,4 @@
{ lib, pkgs, ... }:
{
{ lib, pkgs, ... }: {
# Hyprland user configuration
wayland.windowManager.hyprland = {
enable = lib.mkDefault true;
@ -31,16 +30,15 @@
border_size = 2;
};
decoration = {
rounding = 8;
};
decoration = { rounding = 8; };
};
};
# Hyprland utilities
home.packages = with pkgs; [
# wofi # Launcher
# waybar # Status bar
# dunst # Notifications
];
home.packages = with pkgs;
[
# wofi # Launcher
# waybar # Status bar
# dunst # Notifications
];
}

View file

@ -1,14 +1,9 @@
{ lib, pkgs, ... }:
{
{ lib, pkgs, ... }: {
# Niri user configuration
programs.niri = {
settings = {
# Minimal config - expand as needed
input = {
keyboard.xkb = {
layout = "us";
};
};
input = { keyboard.xkb = { layout = "us"; }; };
# Example keybinds
binds = {
@ -31,9 +26,10 @@
};
# Niri utilities
home.packages = with pkgs; [
# fuzzel # Launcher (recommended for niri)
# waybar # Status bar
# dunst # Notifications
];
home.packages = with pkgs;
[
# fuzzel # Launcher (recommended for niri)
# waybar # Status bar
# dunst # Notifications
];
}

View file

@ -1,5 +1,4 @@
{ lib, ... }:
{
{ lib, ... }: {
# Modern audio stack - PipeWire replaces PulseAudio + JACK + ALSA
services.pipewire = {
enable = lib.mkDefault true;

View file

@ -1,5 +1,4 @@
{ lib, ... }:
{
{ lib, ... }: {
hardware.bluetooth = {
enable = lib.mkDefault false; # Enable when needed
powerOnBoot = lib.mkDefault true;

View file

@ -1,5 +1,4 @@
{ lib, pkgs, ... }:
{
{ lib, pkgs, ... }: {
# Shared desktop settings (imported by all DEs)
# XDG portals for desktop integration

View file

@ -1,5 +1,4 @@
{ pkgs, lib, ... }:
{
{ pkgs, lib, ... }: {
imports = [ ./base.nix ];
# Hyprland - Dynamic tiling Wayland compositor

View file

@ -1,11 +1,8 @@
{ pkgs, lib, ... }:
{
{ pkgs, lib, ... }: {
imports = [ ./base.nix ];
# Niri - Scrollable-tiling Wayland compositor
programs.niri = {
enable = lib.mkDefault true;
};
programs.niri = { enable = lib.mkDefault true; };
# Wayland-specific portal
xdg.portal.wlr.enable = lib.mkDefault true;

View file

@ -1,5 +1,4 @@
{ lib, ... }:
{
{ lib, ... }: {
imports = [ ./base.nix ];
# KDE Plasma 6

View file

@ -1,17 +1,10 @@
{ lib, pkgs, ... }:
{
{ lib, pkgs, ... }: {
fonts = {
enableDefaultPackages = lib.mkDefault true;
packages = with pkgs; [
# Nerd Fonts for terminal icons
(nerdfonts.override {
fonts = [
"FiraCode"
"JetBrainsMono"
"Iosevka"
];
})
(nerdfonts.override { fonts = [ "FiraCode" "JetBrainsMono" "Iosevka" ]; })
# Core fonts
noto-fonts
@ -27,10 +20,7 @@
fontconfig = {
enable = lib.mkDefault true;
defaultFonts = {
monospace = [
"JetBrains Mono"
"FiraCode Nerd Font"
];
monospace = [ "JetBrains Mono" "FiraCode Nerd Font" ];
sansSerif = [ "Noto Sans" ];
serif = [ "Noto Serif" ];
emoji = [ "Noto Color Emoji" ];

View file

@ -1,5 +1,4 @@
{ lib, pkgs, ... }:
{
{ lib, pkgs, ... }: {
# Hardware acceleration (OpenGL/Vulkan)
hardware.graphics = {
enable = lib.mkDefault true;

View file

@ -1,5 +1,4 @@
{ ... }:
{
{ ... }: {
# Desktop user configuration (for Hyprland/Niri setups)
imports = [

View file

@ -1,5 +1,4 @@
{ pkgs, ... }:
{
{ pkgs, ... }: {
# Gaming user configuration (for KDE Plasma)
imports = [
@ -12,17 +11,18 @@
];
# Gaming-specific user packages
home.packages = with pkgs; [
# Communication
# discord
# teamspeak_client
home.packages = with pkgs;
[
# Communication
# discord
# teamspeak_client
# Streaming/Recording
# obs-studio
# Streaming/Recording
# obs-studio
# Media
# spotify
];
# Media
# spotify
];
# KDE-specific settings (optional)
# programs.plasma = {

View file

@ -1,5 +1,4 @@
{ pkgs, ... }:
{
{ pkgs, ... }: {
# Example desktop development workstation configuration
# Copy and modify for your actual hardware
@ -31,11 +30,12 @@
# hardware.bluetooth.enable = true;
# Development-specific packages
environment.systemPackages = with pkgs; [
# Add desktop dev tools here
# docker-compose
# k9s
];
environment.systemPackages = with pkgs;
[
# Add desktop dev tools here
# docker-compose
# k9s
];
# This value determines the NixOS release compatibility
system.stateVersion = "24.05";

View file

@ -1,5 +1,4 @@
{ pkgs, ... }:
{
{ pkgs, ... }: {
# Example gaming desktop configuration
# Copy and modify for your actual hardware