1
Fork 0
satellite/home/features/wayland/default.nix

61 lines
1.7 KiB
Nix
Raw Normal View History

2023-05-24 03:17:09 +02:00
# Common wayland stuff
{ lib, pkgs, upkgs, ... }: {
2023-05-28 02:00:10 +02:00
imports = [
./wofi.nix
./dunst.nix
../desktop/wezterm # Default hyprland terminal
];
2023-05-28 00:40:40 +02:00
2023-05-24 03:17:09 +02:00
# Makes some stuff run on wayland (?)
# Taken from [here](https://github.com/fufexan/dotfiles/blob/3b0075fa7a5d38de13c8c32140c4b020b6b32761/home/wayland/default.nix#L14)
# TODO: ask author what those do
# home.sessionVariables = {
# QT_QPA_PLATFORM = "wayland";
# SDL_VIDEODRIVER = "wayland";
# XDG_SESSION_TYPE = "wayland";
# };
# TODO: set up
2023-05-28 00:40:40 +02:00
# - wallpaper
# - notification daemon
2023-05-24 03:17:09 +02:00
# - screen recording
# - volume/backlight controls
# - eww bar
# - configure hyprland colors using base16 stuff
# - look into swaylock or whatever people use
# - look into greetd or something
# - multiple keyboard layouts
home.packages =
let
_ = lib.getExe;
wl-copy = "${pkgs.wl-clipboard}/bin/wl-copy";
wl-paste = "${pkgs.wl-clipboard}/bin/wl-paste";
2023-05-28 00:40:40 +02:00
# TODO: put this in it's own file perhaps?
2023-05-24 03:17:09 +02:00
# Taken from [here](https://github.com/fufexan/dotfiles/blob/3b0075fa7a5d38de13c8c32140c4b020b6b32761/home/wayland/default.nix#L14)
wl-ocr = pkgs.writeShellScriptBin "wl-ocr" ''
${_ pkgs.grim} -g "$(${_ pkgs.slurp})" -t ppm - \
| ${_ pkgs.tesseract5} - - \
| ${wl-copy}
${_ pkgs.libnotify} "Run ocr on area with output \"$(${wl-paste})\""
2023-05-24 03:17:09 +02:00
'';
in
with pkgs; [
# Utils
libnotify # Send notifications
2023-05-24 03:17:09 +02:00
wl-ocr # Custom ocr script
wl-clipboard # Clipboard manager
wlogout # Nice logout script
2023-05-24 03:17:09 +02:00
# REASON: not available on stable yet
upkgs.hyprpicker # Color picker
# Screenshot related tools
2023-05-24 03:17:09 +02:00
grim # Take screenshot
slurp # Area selector
];
}