working on wofi

This commit is contained in:
2026-03-11 15:33:03 +01:00
parent 6819fec633
commit e067487594
7 changed files with 419 additions and 388 deletions
+354 -360
View File
File diff suppressed because it is too large Load Diff
+26 -25
View File
@@ -1012,35 +1012,45 @@ This is top file of this level which contains just an import statement for all r
} }
#+END_SRC #+END_SRC
** =generated/hyprland/task_launcher/wofi.nix= ** =generated/system/task_launcher/wofi.nix=
This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder
#+BEGIN_SRC nix :tangle generated/hyprland/task_launcher/wofi.nix :noweb tangle :mkdirp yes :eval never-html #+BEGIN_SRC nix :tangle generated/system/task_launcher/wofi.nix :noweb tangle :mkdirp yes :eval never-html
{ lib, config, pkgs, ... }: {
lib,
config,
pkgs,
flakeRoot,
user,
...
}:
let let
# Copy the files into the Nix store wofiConfigDir = "${config.home-manager.users.${user.username}.xdg.configHome}/wofi";
wofiConf = builtins.readFile (toFile "wofi.conf" (builtins.readFile ./assets/hyprland/conf/wofi/wofi.conf)); # Dynamically read all files in assets/hyprland/conf/wofi/
wofiStyle = ./assets/hyprland/conf/wofi/theming.css; wofiConfs =
lib.genAttrs (builtins.attrNames (builtins.readDir "${flakeRoot}/assets/system/conf/wofi"))
(name: {
text = builtins.readFile "${flakeRoot}/assets/system/conf/wofi/${name}";
});
in in
{ {
# Install Wofi environment.systemPackages = with pkgs; [
environment.systemPackages = with pkgs; [ wofi ]; wofi
];
# Home Manager configuration for Wofi home-manager.users.${user.username} = {
home-manager.users.henrov = {
home.file = { home.file = {
".config/wofi/config".text = wofiConf; # Map the files to their target paths in ~/.config/wofi/
".config/wofi/style.css".source = wofiStyle; "${wofiConfigDir}/config" = wofiConfs."wofi.conf"; # Use the actual filename
"${wofiConfigDir}/style.css" = wofiConfs."theming.css"; # Use the actual filename
}; };
# Environment variables for Wofi
home.sessionVariables = { home.sessionVariables = {
WOFI_CONFIG = "$HOME/.config/wofi/config"; WOFI_CONFIG = "${wofiConfigDir}/config";
WOFI_STYLE = "$HOME/.config/wofi/style.css"; WOFI_STYLE = "${wofiConfigDir}/style.css";
}; };
}; };
} }
#+END_SRC #+END_SRC
@@ -1134,15 +1144,6 @@ This is top file of this level which contains just an import statement for all r
} }
#+END_SRC #+END_SRC
** =generated/mangowc/task_launcher/wofi.nix=
This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder
#+BEGIN_SRC nix :tangle generated/mangowc/task_launcher/wofi.nix :noweb tangle :mkdirp yes :eval never-html
{ config, pkgs, lib, user, inputs, flakeRoot,... }:
{
# .. put any code here
}
#+END_SRC
** =generated/mangowc/task_window_workspace_switcher/top.nix= ** =generated/mangowc/task_window_workspace_switcher/top.nix=
This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder
#+BEGIN_SRC nix :tangle generated/mangowc/task_window_workspace_switcher/top.nix :noweb tangle :mkdirp yes :eval never-html #+BEGIN_SRC nix :tangle generated/mangowc/task_window_workspace_switcher/top.nix :noweb tangle :mkdirp yes :eval never-html
+1 -1
View File
@@ -16,7 +16,7 @@ let
}); });
in in
{ {
# NixOS: Enable Hyprland # NixOS: Enable Hyprland (optional)
programs.hyprland = { programs.hyprland = {
enable = true; enable = true;
}; };
@@ -11,9 +11,9 @@ let
wofiConfigDir = "${config.home-manager.users.${user.username}.xdg.configHome}/wofi"; wofiConfigDir = "${config.home-manager.users.${user.username}.xdg.configHome}/wofi";
# Dynamically read all files in assets/hyprland/conf/wofi/ # Dynamically read all files in assets/hyprland/conf/wofi/
wofiConfs = wofiConfs =
lib.genAttrs (builtins.attrNames (builtins.readDir "${flakeRoot}/assets/hyprland/conf/wofi")) lib.genAttrs (builtins.attrNames (builtins.readDir "${flakeRoot}/assets/system/conf/wofi"))
(name: { (name: {
text = builtins.readFile "${flakeRoot}/assets/hyprland/conf/wofi/${name}"; text = builtins.readFile "${flakeRoot}/assets/system/conf/wofi/${name}";
}); });
in in
{ {
@@ -0,0 +1,36 @@
{
lib,
config,
pkgs,
flakeRoot,
user,
...
}:
let
wofiConfigDir = "${config.home-manager.users.${user.username}.xdg.configHome}/wofi";
# Dynamically read all files in assets/hyprland/conf/wofi/
wofiConfs =
lib.genAttrs (builtins.attrNames (builtins.readDir "${flakeRoot}/assets/system/conf/wofi"))
(name: {
text = builtins.readFile "${flakeRoot}/assets/system/conf/wofi/${name}";
});
in
{
environment.systemPackages = with pkgs; [
wofi
];
home-manager.users.${user.username} = {
home.file = {
# Map the files to their target paths in ~/.config/wofi/
"${wofiConfigDir}/config" = wofiConfs."wofi.conf"; # Use the actual filename
"${wofiConfigDir}/style.css" = wofiConfs."theming.css"; # Use the actual filename
};
home.sessionVariables = {
WOFI_CONFIG = "${wofiConfigDir}/config";
WOFI_STYLE = "${wofiConfigDir}/style.css";
};
};
}