Skip to content

Migrating

João Dias edited this page Apr 4, 2026 · 2 revisions

From 2.0.x to 2.1.x

Note

Nix users can probably ignore this, since colorshell's custom hypr* config files never worked before.
If you're using nix, before updating, please add an exec-once line for colorshell in your config if it's not there!

Note

This guide is mainly for Arch Linux/Arch-derivates. If you're using another distro, you may have search for equivalent packages in your distro's package manager yourself.

You'll need to prepare your Hyprland configuration files(to avoid breaking your environment after the update) and also disable some services that may be enabled under systemd.

Preparing Hyprland

There are 3 ways of doing so:

  1. (recommended) Grab the default Hyprland configuration(usually located at /usr/share/hypr/hyprland.conf) and modify it according to your config; because colorshell no longer provides basic keybinds(like window resize, window move, terminal...) and basic decoration options(border size, border radius, shadow...), you'll have to get them from the default Hyprland config.

  2. If you don't want to almost-rewrite your config, you can take a look at the colorshell Hyprland config files and remove duplicate properties from each file at the ~/.config/hypr/shell directory; then you can organize them as you want, since colorshell won't touch any of it anymore.

  3. If you're a simple person and want to keep as much of the previous default as possible, you can grab my Hyprland Dots and modify it to your liking!

Warning

Please remove service enabling lines from your config, since colorshell now handles them internally.
The original autostart config's contents(~/.config/hypr/shell/autostart.conf) can be found here. Please find and remove them from your config.

Warning

colorshell won't start automatically if you don't explicitly tell Hyprland to! If you don't have any exec-once line for colorshell, please add it to your config, so colorshell starts as expected!

# ...
exec-once = colorshell # or "uwsm-app colorshell" if you want to use UWSM
# ...

Disabling services

You can run the following to disable all of the now-unused services(colorshell now handles all of them internally):

systemctl --user disable hyprpaper hypridle hyprsunset

Please don't disable hyprpolkitagent or gnome-keyring, they're authentication agents/keyrings!

Replacing ibus with fcitx5

Colorshell now uses fcitx5 as its IME(Input Method Editor). It works flawlessly under Hyprland compared to ibus. To replace ibus with fcitx5, run:

pacman -Rns ibus
pacman -S --needed fcitx5 fcitx5-configtool fcitx5-qt

(if you were using ibus-mozc before, there's replacement for fcitx5: fcitx5-mozc!)

Removing unused dependencies

Note

This step is optional

Colorshell started implementing its own grim and slurp abstraction, meaning it doesn't need the hyprshot program anymore. You can remove the unused package(please run as super-user):

pacman -D --asexplicit grim slurp # mark both as explicitly installed, so they don't get removed when uninstalling hyprshot
pacman -Rns hyprshot

I'm really sorry for doing this much of breaking changes! 😭
I'll try not to do that much next time :D

Clone this wiki locally