Fixed bugs with caelestia shell

This commit is contained in:
Tomas Rivera
2026-04-09 15:37:14 +02:00
parent 6625c1bdda
commit 4b9145253c
6 changed files with 150 additions and 42 deletions
+6 -6
View File
@@ -5,7 +5,7 @@
⚠️ **Important Notes**
Before applying this configuration on another system, make sure to:
- Update the `hostName`.
- Update the `hostName` (in `configuration.nix` and `home.nix`).
- If your computer **is not a laptop**, set `isLaptop = false` in `~/nixos/other/quickshell/bar/Power.qml`.
*(This is hardcoded because `UPowerDevice.isLaptopBattery` didnt work.)*
@@ -45,7 +45,7 @@ nixos/
└── README.md
```
> The `quickshell` configuration is written in **QML** (`other/quickshell`) and is automatically copied to `~/.config/quickshell` on deployment.
> other/quickshell is the older quickshell configuration.
---
@@ -92,10 +92,8 @@ nixos/
**Daemons:** `upower`, `pipewire`, `pulseaudio`, `brightnessctl`, `playerctl`, `blueman`, `udiskie`, `networkmanager-applet`, `swww` wallpaper daemon
### Screenshots & Notifications
- [`grim`](https://github.com/emersion/grim) (with `quickshell`) screenshots
- [`quickshell`](https://github.com/Totorile1/quickshell) notifications, top bar, and widgets
- [`wlogout`](https://github.com/ArtsyMacaw/wlogout) logout/shutdown widget
### Screenshots, Notifications, Bar and much more!
- [caelestia-shell](https://github.com/caelestia-dots/shell)
---
@@ -161,6 +159,8 @@ If you **dont have the physical macropad**, the table below shows which keybi
| ------------ | -------------------------------------------- |
| Row 1, Col 1 | Kill all apps except focused (`Ctrl+$mod+6`) |
| Row 2, Col 1 | Performance mode (`Ctrl+Alt+7`) |
| Row 3, Col 1 | Do not disturb (`Ctrl+$mod+4` |
| Row 4, Col 1 | Notification center (`Ctrl+Alt+1`) |
| Row 3, Col 2 | Special characters (`Ctrl+$mod+3`) |
| Row 3, Col 3 | Color picker (`Ctrl+Alt+8`) |
| Row 4, Col 1 | Notification center toggle (`Ctrl+Alt+1`) |
Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 MiB

+14 -1
View File
@@ -83,6 +83,13 @@
# zsh dont want to work if it is not initialzed here.
programs.zsh.enable = true;
security.wrappers.gsr-kms-server = { # to remove the password prompt when using gpu-screen-recorder
owner = "root";
group = "root";
capabilities = "cap_sys_admin+ep";
source = "${pkgs.gpu-screen-recorder}/bin/gsr-kms-server";
};
# Enable the GNOME Desktop Environment.
# services.displayManager.gdm.enable = true;
# services.desktopManager.gnome.enable = true;
@@ -167,7 +174,7 @@
gnome-characters
gnome-disk-utility
kdePackages.okular
nautilus
kdePackages.dolphin
gnome-font-viewer
wget
tree # shows dir in tree
@@ -244,6 +251,12 @@
pylint
black
nixd
# for caelestia
gpu-screen-recorder
fuzzel
papirus-icon-theme
papirus-folders
power-profiles-daemon
];
# fonts
+2 -2
View File
@@ -27,8 +27,8 @@
../../modules/home-manager/caelestia.nix # caelestia shell is based on quickshell
#../../modules/home-manager/oh-my-posh.nix # zsh customizer
../../modules/home-manager/oh-my-zsh.nix # another zsh customizer
../../modules/home-manager/hypridle.nix
../../modules/home-manager/swaylock.nix
#../../modules/home-manager/hypridle.nix
#../../modules/home-manager/swaylock.nix
../../modules/home-manager/anki.nix # we use only for some settings. see ../../modules/nixos/anki.nix for activating
../../modules/home-manager/librewolf.nix # privacy browser
../../modules/home-manager/cursor.nix # cursor (the icon not the app)
+120 -28
View File
@@ -5,6 +5,10 @@
caelestia-shell,
...
}: {
home.file.".face" = { # this is were caelestia will search for profiles pictures
source = ../../assets/sisyphePFP.png;
};
# set profile picture in ~/.face
programs.caelestia = {
enable = true;
@@ -22,7 +26,7 @@
scale = 1;
};
};
font = {
/*font = {
family = {
clock = "Rubik"; # (TODO figure out those fonts)
material = "Material Symboles Rounded";
@@ -32,7 +36,7 @@
size = {
scale = 1;
};
};
};*/
padding = {
scale = 1;
};
@@ -117,7 +121,7 @@
};
invertColors = false;
};
enabled = true; #ptet changer ca pour wallpaper
enabled = false; #default true
visualiser = {
blur = false;
enabled = false;
@@ -133,8 +137,8 @@
showOnHover = true;
};
clock = {
background = false;
showDate = false;
background = true;
showDate = true;
showIcon = true;
};
dragThreshold = 20;
@@ -189,7 +193,7 @@
};
showOnHover = true;
status = {
showAudio = false;
showAudio = true;
showBattery = true;
showBluetooth = true;
showKbLayout = false;
@@ -199,10 +203,10 @@
showLockStatus = true;
};
tray = {
background = false;
background = true; # default true
compact = false;
iconSubs = [];
recolour = false;
recolour = true;
};
workspaces = {
activeIndicator = true;
@@ -247,23 +251,23 @@
icon = "calculate";
description = "Do simple math equations (powered by Qalc)";
command = [ "autocomplete" "calc" ];
enabled = true;
enabled = false; # default true
dangerous = false;
}
{
name = "Scheme"; # to remove
name = "Scheme";
icon = "palette";
description = "Change the current colour scheme";
command = [ "autocomplete" "scheme" ];
enabled = true;
enabled = false; # default true
dangerous = false;
}
{
name = "Wallpaper"; # to remove
name = "Wallpaper";
icon = "image";
description = "Change the current wallpaper";
command = [ "autocomplete" "wallpaper" ];
enabled = true;
enabled = false; # default true
dangerous = false;
}
{
@@ -279,31 +283,31 @@
icon = "opacity";
description = "Change shell transparency";
command = [ "autocomplete" "transparency" ];
enbaled = false;
enabled = false;
dangerous = false;
}
{
name = "Random"; # to remove
name = "Random";
icon = "casino";
description = "Switch to a random wallpaper";
command = [ "caelestia" "wallpaper" "-r" ];
enabled = true;
enabled = false; # default true
dangerous = false;
}
{
name = "Light"; # to remove
name = "Light";
icon = "light_mode";
description = "Change the scheme to light mode";
command = [ "setMode" "light" ];
enabled = true;
enabled = false; # default true
dangerous = false;
}
{
name = "Dark"; # to remove
name = "Dark";
icon = "dark_mode";
description = "Change the scheme to dark mode";
command = [ "setMode" "dark" ];
enabled = true;
enabled = false; # default true
dangerous = false;
}
{
@@ -339,11 +343,11 @@
dangerous = false;
}
{
name = "Settings"; # to remove -- > we want to do every config with nix
name = "Settings";
icon = "settings";
description = "Configure the shell";
command = [ "caelestia" "shell" "controlCenter" "open" ];
enabled = true;
enabled = false; # default true
dangerous = false;
}
];
@@ -374,9 +378,9 @@
defaultExpireTimeout = 5000;
expantThreshold = 20;
openeExpanded = false;
expire = false;
expire = true;
};
osd = { # whats that
osd = { # thats the slider for brightness and sound
enabled = true;
enableBrightness = true;
enableMicrophone = false;
@@ -428,7 +432,7 @@
# is there a way to get some system info?
utilities = {
enabled = true;
maxToasts = 4; # what's that?
maxToasts = 4; # toats are like notification but on the botto left
toasts = {
audioInputChanged = true;
audioOutputChanged = true;
@@ -478,7 +482,7 @@
enabled = true; # should remap my performance mode
}
{
id = "dnd"; # what's that?
id = "dnd"; #do not disturb
enabled = true;
}
{
@@ -487,10 +491,98 @@
}
];
};
cli = {
cli = { # default config https://github.com/caelestia-dots/cli?tab=readme-ov-file#configuring
enable = true; # Also add caelestia-cli to path
settings = {
theme.enableGtk = true;
record = {
extraArgs = [];
};
wallpaper = {
postHook = ""; # default "echo $WALLPAPER_PATH"
};
theme = {
enableTerm = true;
enableHypr = true;
enableDiscord = true;
enableSpicetify = true;
enableFuzzel = true; #what's that?
enablleBtop = false; # default true
enableQt = true;
};
toggles = {
communication = {
discord = {
enable = false; # default true
match = [
{
class = "discord";
}
];
whatsapp = {
enable = true;
match = [
{
class = "whatsapp";
}
];
};
};
};
music = {
spotify = {
enable = false; # default true
match = [
{
class = "Spotify";
}
{
initialTitle = "Spotify";
}
{
initialTitle = "Spotify Free";
}
];
command = [ "spicetify" "watch" "-s" ];
move = true;
};
feishin = {
enable = true;
match = [
{
class = "feishin";
}
];
move = true;
};
};
sysmon = {
btop = {
enable = true;
match = [
{
class = "btop";
title = "btop";
workspace = {
name = "special:sysmon";
};
}
];
command = [ "foot" "-a" "btop" "-T" "btop" "fish" "-C" "exec btop" ]; # maybe switch to btm and kitty?
};
};
todo = {
todoist = {
enable = false; # default true
match = [
{
class = "Todoist";
}
];
command = [ "todoist" ];
move = true;
};
};
};
};
};
};
+7 -4
View File
@@ -20,7 +20,7 @@ in {
"$term" = "kitty";
"$editor" = "nvim";
"$notes" = "kitty --class \"custom-obsidianvaults\" --name \"Select Obsidian vault\" --hold custom-obsidianvaults";
"$file" = "nautilus";
"$file" = "dolphin";
"$browser" = "kitty --class \"custom-librewolfprofiles\" --name \"Select LibreWolf profile\" --hold custom-librewolfprofiles";
# ▄▀█ █▄░█ █ █▀▄▀█ ▄▀█ ▀█▀ █ █▀█ █▄░█
# █▀█ █░▀█ █ █░▀░█ █▀█ ░█░ █ █▄█ █░▀█
@@ -145,7 +145,8 @@ in {
"$mod_SHIFT, S, exec, caelestia shell picker open"
# framework 16 rgb macropad
"Ctrl+$mod, 6, exec, custom-killall" # pos 1 1 killall apps except focused one
"Ctrl+Alt, 7, exec, custom-performance" # pos 2 1 start performance mode
#"Ctrl+Alt, 7, exec, custom-performance" # pos 2 1 start performance mode
"Ctrl+Alt, 7, exec, caelestia shell gameMode toggle"
# reloads the autostart programs # pos 3 1
# we passed to caelestia-shell and stoped using that
/*"Ctrl+$mod, 4, exec, sleep 1 && kitty -o font_size=16 -e sh -c 'custom-weather'"
@@ -155,6 +156,8 @@ in {
"Ctrl+$mod, 4, exec, sleep 1 && kitty -o font_size=1 -e sh -c 'cmatrix -br'"
#"Ctrl+Alt, 1, exec, swaync-client -t" # pos 4 1 notification center
"Ctrl+Alt, 1, exec, qs ipc call notifications toggle" */
"Ctrl+Alt, 1, exec, caelestia shell drawers toggle sidebar"
"Ctrl+$mod, 4, exec, caelestia shell notifs toggleDnd"
"Ctrl+$mod, 3, exec, pavucontrol" # pos 1 2 audiocontrol
"Ctrl+$mod, 5, exec, gnome-characters" # pos 2 2 special chars
"Ctrl+Alt, 8, exec, hyprpicker | tee >(wl-copy) | cliphist store" # pos 3 2 colorpicker
@@ -215,7 +218,7 @@ in {
"custom-obsidianbackup" # backups the obsidian notes to kdrive and to a timed hidden dir (~/.Notes.backup/)
"QS-notifycache" # builds the cache that will be used for the notification history
#########################
/* We stopped using that ######################### maybe we should desactivate those scripts
# login autostart
#######################
"[workspace 1 silent] sleep 1 && kitty -o font_size=16 -e sh -c 'custom-weather'"
@@ -224,7 +227,7 @@ in {
"[workspace 1 silent] sleep 1 && kitty -o font_size=5 -e btm --theme gruvbox --disable-click --disable_advanced_kill --enable_cache_memory -g -R -T "
"[workspace 1 silent] sleep 1 && kitty -o font_size=1 -e sh -c 'cmatrix -br'"
######################
######################
######################*/
];
# gestures (also keybindings)