Getting Started
Install and run slowshell on your wayland compositor.
Slowshell is(currently) a self-contained single binary, so the installation process is pretty much straight-forward.
What do I need?
Slowshell is a wayland layer-shell client. Which means that you will need a wayland session on a compositor that supports said clients. Currently niri, sway and hyprland are supported out of the box.
Optional Dependencies: These are not fatal requirements, but provide inner machinery for the various components within:
| Feature | Requires |
|---|---|
| Audio + MPRIS | PipeWire and wpctl |
| Bluetooth | BlueZ |
| Networking | NetworkManager |
| Power/brightness | UPower, power-profiles-daemon, brightnessctl |
| Wallpapers | swaybg, swww or hyprpaper (or use the built-in renderer) |
| Clipboard | cliphist (+ wl-paste, wl-copy) |
Install
Feel free to read the script before you run it:
curl -fsSL https://raw.githubusercontent.com/bushyice/slowshell/main/install.sh | sh
curl -fsSL .../install.sh | sh -s -- --version 0.0.1
curl -fsSL .../install.sh | sh -s -- --path /usr/local/bin
nix run github:bushyice/slowshell
nix profile install github:bushyice/slowshell
You can add slowshell as a flake input:
{
inputs.slowshell.url = "github:bushyice/slowshell";
outputs = { self, nixpkgs, slowshell, ... }: {
nixosConfigurations.machine = nixpkgs.lib.nixosSystem {
modules = [{
environment.systemPackages = [
slowshell.packages.${pkgs.system}.default
];
}];
};
};
}
The flake also ships a module for declarative configuration:
{
imports = [ inputs.slowshell.homeManagerModules.default ];
programs.slowshell = {
enable = true;
package = inputs.slowshell.packages.${pkgs.system}.default;
systemd.enable = true;
};
}
See Home Manager for the full option set.
For a detailed guide on building, check Building from source.
cargo build --release
Running
slowshell daemon # Runs on foreground
slowshell start/stop # Managing on backgroundI have it, where to start?
After you install it, you can start setting up your shell.