Compare commits

..

1 commit

Author SHA1 Message Date
Chris (wolcen) Thompson
3161bd9b79 Remove KDE, add Hyprland
...attempt 1
2025-10-02 10:32:57 -04:00
6 changed files with 46 additions and 111 deletions

View file

@ -1,49 +0,0 @@
on:
push:
paths:
- '**/test.yml'
workflow_dispatch:
inputs:
boolean:
description: 'Boolean'
required: true
type: boolean
jobs:
build:
runs-on: docker
if: inputs.boolean || vars.RUN_DEFAULT == '1'
container:
image: git.agaric.com/agaric/deploycontainer:0.0.5
env:
COMPOSER_IGNORE_PLATFORM_REQS: 1
COMPOSER_ARGS: "install --no-dev --no-progress --no-interaction --no-scripts --optimize-autoloader"
SHHH: "${{ secrets.SHHH }}"
steps:
- name: checkout
uses: actions/checkout@v3
- name: Run Gomplate Action
uses: https://github.com/ammarlakis/action-gomplate@v1
with:
input_file: 'testing.template'
output_file: 'testing.md'
- name: inspect environment
shell: "bash --noprofile --norc -exo pipefail {0}"
run: |
env
jq . - <<'EOF'
${{ toJSON(github) }}
EOF
jq . - <<'EOF'
${{ toJSON(forge) }}
EOF
jq . - <<'EOF'
${{ toJSON(secrets) }}
EOF
jq . - <<'EOF'
${{ toJSON(inputs) }}
EOF
jq . - <<'EOF'
${{ toJSON(vars) }}
EOF
cat testing.md

12
flake.lock generated
View file

@ -7,11 +7,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1768325819, "lastModified": 1759337100,
"narHash": "sha256-mBKqOJkxCRwEhIXfq93WTcDXsBlJ/f1Dfv9thJxrDPs=", "narHash": "sha256-CcT3QvZ74NGfM+lSOILcCEeU+SnqXRvl1XCRHenZ0Us=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "b1fa714d6cd656e3105d1965637be6ab7541d7d7", "rev": "004753ae6b04c4b18aa07192c1106800aaacf6c3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -22,11 +22,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1768127708, "lastModified": 1759036355,
"narHash": "sha256-1Sm77VfZh3mU0F5OqKABNLWxOuDeHIlcFjsXeeiPazs=", "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "ffbc9f8cbaacfb331b6017d5a5abb21a492c9a38", "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -68,7 +68,7 @@ in
boot.kernelModules = [ "kvm-amd" "nct6775" ]; boot.kernelModules = [ "kvm-amd" "nct6775" ];
# Fix problems with hanging on RX6700 (disables PSR - Panel Self Refresh) # Fix problems with hanging on RX6700 (disables PSR - Panel Self Refresh)
boot.kernelParams = [ "amdgpu.dcdebugmask=0x10" "pcie_port_pm=off" "pcie_aspm.policy=performance" ]; boot.kernelParams = [ "amdgpu.dcdebugmask=0x10" ];
boot.extraModulePackages = [ boot.extraModulePackages = [
(amdgpu-kernel-module.overrideAttrs (_: { (amdgpu-kernel-module.overrideAttrs (_: {
@ -135,17 +135,21 @@ in
# services.xserver.enable = true; # services.xserver.enable = true;
# Enable the KDE Plasma Desktop Environment. # Enable the KDE Plasma Desktop Environment.
services.displayManager.sddm.enable = true; #services.displayManager.sddm.enable = true;
services.displayManager.sddm.wayland.enable = true; #services.displayManager.sddm.wayland.enable = true;
services.desktopManager.plasma6.enable = true; #services.desktopManager.plasma6.enable = true;
programs.hyprland = {
enable = true;
xwayland.enable = true;
withUWSM = true;
# Enable the Cosmic Desktop Environment: };
# Enable the login manager # Optional, hint electron apps to use wayland:
#services.displayManager.cosmic-greeter.enable = true; environment.sessionVariables.NIXOS_OZONE_WL = "1";
# Enable the COSMIC DE itself xdg.portal = {
#services.desktopManager.cosmic.enable = true; enable = true;
# Enable XWayland support in COSMIC extraPortals = with pkgs; [ xdg-desktop-portal-hyprland ];
# services.desktopManager.cosmic.xwayland.enable = true; };
# Configure keymap in X11 (presumably, XWayland uses something different?) # Configure keymap in X11 (presumably, XWayland uses something different?)
#services.xserver.xkb = { #services.xserver.xkb = {
# layout = "us"; # layout = "us";
@ -201,8 +205,6 @@ in
programs.kdeconnect.enable = true; programs.kdeconnect.enable = true;
# Install firefox. # Install firefox.
programs.firefox.enable = true; programs.firefox.enable = true;
# Attempt to get the kde wallet launched
#security.pam.services.login.kwallet.enable = true;
# Required for DDEV to add hosts files, if your DNS will not resolve addresses to localhost. # Required for DDEV to add hosts files, if your DNS will not resolve addresses to localhost.
# Some firewall DNS resolvers will NOT allow an externally resolved domain name to resolve to a reserved IP (e.g. localhost). # Some firewall DNS resolvers will NOT allow an externally resolved domain name to resolve to a reserved IP (e.g. localhost).
@ -245,21 +247,21 @@ in
# List packages installed in system profile. To search, run: # List packages installed in system profile. To search, run:
# $ nix search wget # $ nix search wget
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
opencode # ai coding tool hyprlock # Hyprland's GPU-accelerated screen locking utility.
asciinema # terminal recorder/playback tool hypridle # Hyprland's idle daemon.
freerdp # connect to KDE remotely w/RDP instead (KDE 6.1 servers)...seems it's still an xwindows client that's most tested. 🤮 hyprpaper # Hyprland's wallpaper utility.
openh264 # rather, this is the client library hyprsunset # Application to enable a blue-light filter on Hyprland.
dos2unix # convert file line endings hyprpicker # Wayland color picker that does not suck.
hyprpolkitagent # Polkit authentication agent written in QT/QML.
kitty # default terminal for hyprland
dnsmasq # temporarily allowed for connection sharing dnsmasq # temporarily allowed for connection sharing
ansible # automation/software-defined-configuration tool ansible # automation/software-defined-configuration tool
binutils # gnu bin utils binutils # gnu bin utils
# conda # python environment management # conda # python environment management
gettext # gnu lib for text manipulation (added for envsubst) gettext # gnu lib for text manipulation (added for envsubst)
fresh-editor # cli editor like...notepad++ or someething? seems nice.
uv # alternative for python env management... uv # alternative for python env management...
lazydocker # docker[/compose] tui lazydocker # docker[/compose] tui
sqlite-interactive # sqlite cli sqlite-interactive # sqlite cli
docker-buildx # enhanced build utilities for docker
duckdb # wanted mostly as cli for SQL on csv files duckdb # wanted mostly as cli for SQL on csv files
neovim # next gen vim w/lua neovim # next gen vim w/lua
wget # url fetcher/spider wget # url fetcher/spider
@ -268,7 +270,7 @@ in
whois # net ip/dns lookup whois # net ip/dns lookup
meld # file diff'r meld # file diff'r
wl-clipboard-rs # rust implementation of wayland clipboard cli wl-clipboard-rs # rust implementation of wayland clipboard cli
doggo # a better dig cmd...only written with go dogdns # a better dig cmd
bat # a better cat command bat # a better cat command
nix-search-cli # search the nix repo nix-search-cli # search the nix repo
lsof # show open file handles lsof # show open file handles
@ -278,7 +280,7 @@ in
amdgpu_top # top-like monitor for AMD GPUs amdgpu_top # top-like monitor for AMD GPUs
direnv # autoload .envrc files direnv # autoload .envrc files
zoxide # directory navigator (z) zoxide # directory navigator (z)
nextcloud-client # next cloud UI (also just fialed to build. Gah... damn KDE lib issues nextcloud-client # next cloud UI
file # show file types file # show file types
tldr # cli command summary tldr # cli command summary
stress # system workload generator stress # system workload generator
@ -287,11 +289,9 @@ in
niv # dependency cli for nix-shell niv # dependency cli for nix-shell
openrgb-with-all-plugins # colors hardware control openrgb-with-all-plugins # colors hardware control
just # command runner like make just # command runner like make
ansible # configuration management system/automation tool #ansible # configuration management system/automation tool
kdePackages.kcachegrind # analyze xdebug output kdePackages.kcachegrind # analyze xdebug output
kdePackages.filelight # disk space visualizer kdePackages.filelight # disk space visualizer
#kdePackages.kwallet # added in order to use Signal, since it tied itself to my first desktop
kdePackages.kwalletmanager # added in order to use Signal, since it tied itself to my first desktop
libreoffice-qt # libreoffice - qt is best for KDE libreoffice-qt # libreoffice - qt is best for KDE
hunspell # spell checking hunspell # spell checking
hunspellDicts.en_US # spell check dictionary hunspellDicts.en_US # spell check dictionary
@ -303,15 +303,14 @@ in
brave # privacy oriented browser brave # privacy oriented browser
zig # the zig language zig # the zig language
powerline # prompt utility powerline # prompt utility
dust # cli hdd space usage visualization
distrobox # instant alternate OS availability distrobox # instant alternate OS availability
pigz # muti-treaded replacement for gzip pigz # muti-treaded replacement for gzip
unzip # old standard zip handler unzip # old standard zip handler
# rpi-imager # rasbperry pi os burner util (1.9.6 failed build) rpi-imager # rasbperry pi os burner util
screenkey # broadcast key presses # screenkey # broadcast key presses
superfile # cli file manager superfile # cli file manager
mpv # movie player mpv # movie player
obs-studio # open broadcast studio #obs-studio # open broadcast studio
protonup-qt # proton version installer protonup-qt # proton version installer
heroic # game launcher (GOG/Epic/Prime) heroic # game launcher (GOG/Epic/Prime)
lutris # game launcher (EA/Humble/Ubi++) lutris # game launcher (EA/Humble/Ubi++)
@ -330,12 +329,11 @@ in
gimp # GIMP image manipulation proggy gimp # GIMP image manipulation proggy
zed-editor # the most hopeful replacement for vscode...if I never learn nvim zed-editor # the most hopeful replacement for vscode...if I never learn nvim
noisetorch # noise/background filter for mic noisetorch # noise/background filter for mic
go # golang - general purpose programming
]; ];
programs.zsh.enable = true; programs.zsh.enable = true;
programs.git = { programs.git = {
enable = true; enable = true;
lfs.enable = false; lfs.enable = true;
}; };
# Orchestrator for FOSS VR stack # Orchestrator for FOSS VR stack
#programs.envision = { #programs.envision = {
@ -400,11 +398,11 @@ in
#services.rustdesk-server.openFirewall = false; #services.rustdesk-server.openFirewall = false;
# RX 6700 XT setup # RX 6700 XT setup
hardware.graphics.extraPackages = [ hardware.graphics.extraPackages = [
#pkgs.amdvlk - replaced by RADV (enabled by default) pkgs.amdvlk
pkgs.libcap pkgs.libcap
pkgs.libva pkgs.libva
pkgs.mesa pkgs.mesa
#pkgs.rocmPackages.clr.icd ...no idea if this is causing the rocm-related build fail. pkgs.rocmPackages.clr.icd
#pkgs.pcre2 #pkgs.pcre2
#pkgs.libselinux #pkgs.libselinux
#pkgs.rocmPackages.rocblas #pkgs.rocmPackages.rocblas
@ -414,20 +412,17 @@ in
#pkgs.rocmPackages.rocm-device-libs #pkgs.rocmPackages.rocm-device-libs
#pkgs.rocmPackages.rpp #pkgs.rocmPackages.rpp
]; ];
hardware.graphics.enable = true;
hardware.graphics.enable32Bit = true;
# To enable Vulkan support for 32-bit applications, also add: # To enable Vulkan support for 32-bit applications, also add:
#hardware.graphics.extraPackages32 = [ hardware.graphics.extraPackages32 = [
# pkgs.driversi686Linux.amdvlk - replaced by RADV..hopefully also 32-bit enabled by default. pkgs.driversi686Linux.amdvlk
#]; ];
hardware.amdgpu.opencl.enable = true; hardware.amdgpu.opencl.enable = true;
services.ollama = { services.ollama = {
enable = true; enable = true;
#acceleration = "rocm"; # hipblaslt not compiling at present - build reports this no longer takes effect acceleration = "rocm";
package = pkgs.ollama-vulkan;
environmentVariables = { environmentVariables = {
HCC_AMDGPU_TARGET = "gfx1031"; # used to be necessary, but doesn't seem to anymore HCC_AMDGPU_TARGET = "gfx1031"; # used to be necessary, but doesn't seem to anymore
OLLAMA_LOAD_TIMEOUT = "2m"; # Reduce load timeout (from 5 min)...if it's that big, forget it. OLLAMA_LOAD_TIMEOUT = "2m"; # Reduce load timeout (from 5 min)...if it's that big, forget it.
@ -472,11 +467,7 @@ in
script.text = '' script.text = ''
install -d -m 755 /home/wolcen/.open-webui -o root -g root install -d -m 755 /home/wolcen/.open-webui -o root -g root
''; '';
}; };
# Enable flatpak (used for Freetube)
services.flatpak.enable = true;
virtualisation = { virtualisation = {
# Add docker! # Add docker!
docker.enable = true; docker.enable = true;
@ -517,7 +508,6 @@ in
}; };
# Force radv # Force radv
environment.variables.AMD_VULKAN_ICD = "RADV"; environment.variables.AMD_VULKAN_ICD = "RADV";
environment.variables.QT_QPA_PLATFORM = "wayland";
# Or # Or
#environment.variables.VK_ICD_FILENAMES = #environment.variables.VK_ICD_FILENAMES =
# "/run/opengl-driver/share/vulkan/icd.d/radeon_icd.x86_64.json"; # "/run/opengl-driver/share/vulkan/icd.d/radeon_icd.x86_64.json";

View file

@ -5,6 +5,7 @@
# manage. # manage.
home.username = "wolcen"; home.username = "wolcen";
home.homeDirectory = "/home/wolcen"; home.homeDirectory = "/home/wolcen";
# This value determines the Home Manager release that your configuration is # This value determines the Home Manager release that your configuration is
# compatible with. This helps avoid breakage when a new Home Manager release # compatible with. This helps avoid breakage when a new Home Manager release
# introduces backwards incompatible changes. # introduces backwards incompatible changes.
@ -69,15 +70,10 @@
# /etc/profiles/per-user/wolcen/etc/profile.d/hm-session-vars.sh # /etc/profiles/per-user/wolcen/etc/profile.d/hm-session-vars.sh
# #
home.sessionVariables = { home.sessionVariables = {
# EDITOR = "nvim"; # EDITOR = "emacs";
# QT_QPA_PLATFORM = "wayland"; # Attempt to get KDE keyring to launch
}; };
#security.pam.services.login.kwallet.enable = true; # Also for attempt to get KDE keyring to launch
# For Monado: # For Monado:
xdg.configFile."openxr/1/active_runtime.json" = { xdg.configFile."openxr/1/active_runtime.json".source = "${pkgs.monado}/share/openxr/1/openxr_monado.json";
source = "${pkgs.monado}/share/openxr/1/openxr_monado.json";
force = true;
};
# For WiVRn: # For WiVRn:
#xdg.configFile."openxr/1/active_runtime.json".source = "${pkgs.wivrn}/share/openxr/1/openxr_wivrn.json"; #xdg.configFile."openxr/1/active_runtime.json".source = "${pkgs.wivrn}/share/openxr/1/openxr_wivrn.json";

View file

@ -27,8 +27,7 @@ in
extraGroups = [ "wheel" "networkmanager" "docker" ]; extraGroups = [ "wheel" "networkmanager" "docker" ];
packages = with pkgs; [ packages = with pkgs; [
#kdePackages.kate # ... why did I add this? #kdePackages.kate # ... why did I add this?
bitwarden-desktop # password web service ui mkcert
mkcert # create locally trusted certificates
prismlauncher # minecraft launcher/manager prismlauncher # minecraft launcher/manager
thunderbird # email client thunderbird # email client
keepassxc # passwords! keepassxc # passwords!

View file

@ -1 +0,0 @@
{{ .Env.SHHH }}