mv to old

This commit is contained in:
Peritia 2025-08-11 16:02:53 +02:00
parent ca07a6a3e9
commit 4cce293352
8 changed files with 0 additions and 0 deletions

View file

@ -0,0 +1,169 @@
{ config, pkgs, lib, ... }:
let
# Your application definitions
apps = {
brave = {
name = "Brave";
genericName = "Web Browser";
exec = "brave";
icon = "world";
comment = "Browse the Web";
terminal = false;
categories = [ "Network" "WebBrowser" ];
};
terminal = {
name = "Terminal";
exec = "xfce4-terminal";
icon = "utilities-terminal";
comment = "Run a terminal emulator";
terminal = true;
categories = [ "System" "Utility" ];
};
libre-calc = {
name = "Libre Calc";
exec = "libreoffice --calc";
icon = "libreoffice-calc";
comment = "Spreadsheet program";
terminal = false;
categories = [ "Office" ];
};
libre-write = {
name = "Libre Write";
exec = "libreoffice --writer";
icon = "libreoffice-writer";
comment = "Word processor";
terminal = false;
categories = [ "Office" ];
};
mpv = {
name = "MPV";
exec = "mpv";
icon = "mpv";
comment = "Video Player";
terminal = false;
categories = [ "AudioVideo" "Player" ];
};
obsidian = {
name = "Obsidian";
exec = "obsidian %u";
icon = "obsidian";
comment = "Markdown Editor";
terminal = false;
categories = [ "Office" "Utility" ];
};
gwenview = {
name = "Gwenview";
exec = "gwenview %U";
icon = "gwenview";
comment = "Image Viewer";
terminal = false;
categories = [ "Graphics" ];
};
krita = {
name = "Krita";
exec = "krita %F";
icon = "krita";
comment = "Digital painting";
terminal = false;
categories = [ "Graphics" ];
};
prism-launcher = {
name = "Prism Launcher";
exec = "prismlauncher %U";
icon = "minecraft";
comment = "Minecraft Launcher";
terminal = false;
categories = [ "Game" ];
};
protonvpn = {
name = "ProtonVPN";
exec = "protonvpn-app";
icon = "protonvpn";
comment = "VPN Client";
terminal = false;
categories = [ "Network" "Security" ];
};
signal = {
name = "Signal";
exec = "signal-desktop %U";
icon = "signal-desktop";
comment = "Private Messenger";
terminal = false;
categories = [ "Network" "InstantMessaging" ];
};
vesktop = {
name = "Vesktop";
exec = "vesktop %U";
icon = "discord";
comment = "Discord Client";
terminal = false;
categories = [ "Network" "Chat" ];
};
spotify = {
name = "Spotify";
exec = "spotify %U";
icon = "spotify";
comment = "Spotify Music";
terminal = false;
categories = [ "AudioVideo" "Player" ];
};
okular = {
name = "Okular";
exec = "okular %U";
icon = "okular";
comment = "PDF Viewer";
terminal = false;
categories = [ "Office" "Viewer" ];
};
steam = {
name = "Steam";
exec = "steam";
icon = "steam";
comment = "Steam Game Platform";
terminal = false;
categories = [ "Game" ];
};
};
in {
home.activation.desktopFiles = lib.hm.dag.entryAfter [ "writeBoundary" ] (
''
mkdir -p "$HOME/Desktop"
'' + (lib.concatStringsSep "\n" (lib.mapAttrsToList (name: data:
let
desktopText = ''
[Desktop Entry]
Version=1.0
Type=Application
Name=${data.name}
${lib.optionalString (data ? genericName) "GenericName=${data.genericName}"}
Comment=${data.comment}
Exec=${data.exec}
Icon=${data.icon}
Terminal=${if data.terminal then "true" else "false"}
Categories=${lib.concatStringsSep ";" data.categories};
'';
in ''
cat > "$HOME/Desktop/${name}.desktop" <<EOF
${desktopText}
EOF
chmod +x "$HOME/Desktop/${name}.desktop"
''
) apps))
);
}

View file

@ -0,0 +1,114 @@
{
config,
nixDirectory,
pkgs,
...
}: let
# Import user-specific variables
userVars = import ../variables/user-vars.nix;
inherit (userVars) username gitUsername gitEmail;
in {
################################################################
# Basic Home Manager Setup
################################################################
home.username = username;
home.homeDirectory = "/home/${username}";
home.stateVersion = "25.05";
################################################################
# Module Imports
################################################################
imports = [
# All Home Manager Modules
../../../../Modules/Applications
# Desktop applications
./desktop.nix
];
################################################################
# Nyx Tools Configuration
################################################################
#imports = [
# # Nyx Tools
# # ../../../../Misc/Nyx-Tools/nyx.nix
#];
# Optional but really cool so if you wanna use it:
# https://github.com/Peritia-System/Nyx-Tools
#modules.nyx-rebuild = {
# enable = true;
# inherit username nixDirectory;
# editor = "nvim";
# formatter = "alejandra";
# enableAlias = false;
# autoPush = false;
# enableFormatting = false;
# startEditor = false;
#};
#modules.nyx-cleanup = {
# enable = true;
# inherit username nixDirectory;
# autoPush = false;
# keepGenerations = 5;
# enableAlias = false;
#};
#modules.nix-tool = {
# enable = true;
# inherit nixDirectory;
#};
################################################################
# Package Selection
################################################################
home.packages = import ./user-packages.nix {inherit pkgs;};
################################################################
# Feature Modules
################################################################
# App groups
standardApps.enable = true;
officeApps.enable = true;
# Individual applications
brave-and-extension.enable = true;
vscodium-and-extension.enable = true;
vesktop.enable = true;
krita.enable = true;
signal.enable = true;
spotify.enable = true;
obsidian.enable = true;
protonvpn.enable = true;
# Gaming:
prismlauncher.enable = true;
cliTools.enable = true;
################################################################
# Git Configuration
################################################################
programs.git = {
enable = true;
userName = gitUsername;
userEmail = gitEmail;
aliases = {
co = "checkout";
ci = "commit";
st = "status";
br = "branch";
};
};
}

View file

@ -0,0 +1,6 @@
# ./user-packages.nix
{pkgs}:
with pkgs; [
mpv
vlc
]