nixos-configs/devices/binto/home/packages.nix

113 lines
2.7 KiB
Nix
Raw Normal View History

2023-11-28 21:24:53 -05:00
{
pkgs,
nixpkgs-wayland,
...
}: let
waypkgs = nixpkgs-wayland.packages.x86_64-linux;
in {
programs = {
obs-studio = {
enable = true;
plugins = with waypkgs; [
obs-wlrobs
];
};
btop.enable = true;
};
home.packages =
(with pkgs; [
# FIXME: vlc stutters
mpv
nextcloud-client
libreoffice-fresh
photoqt
hunspell
hunspellDicts.en_CA
jellyfin-media-player
spotifywm
thunderbird
prismlauncher-qt5
(pkgs.discord.override {
withOpenASAR = true;
withVencord = true;
})
# School
virt-manager
bluej
xournalpp
])
++ (with pkgs.plasma5Packages; [
ark
kcharselect
kdenlive
okular
# Dolphin & co
dolphin
dolphin-plugins
kdegraphics-thumbnailers
ffmpegthumbs
kio
kio-admin # needs to be both here and in system pkgs
kio-extras
kmime
])
++ (with pkgs.gnome; [
gnome-calculator
]);
# TODO: add mic sound
2023-11-23 01:23:15 -05:00
xdg.configFile."gsr.sh" = {
executable = true;
text = ''
export WINDOW=DP-5
export CONTAINER=mkv
export QUALITY=very_high
export CODEC=auto
export AUDIO_CODEC=aac
export FRAMERATE=60
export REPLAYDURATION=1200
export OUTPUTDIR=/home/matt/Videos/Replay
export MAKEFOLDERS=yes
# export ADDITIONAL_ARGS=
2023-11-28 21:24:53 -05:00
# Disable compositor in X11 for best performance
2023-11-23 01:23:15 -05:00
exec /bin/sh -c 'AUDIO="''${AUDIO_DEVICE:-$(pactl get-default-sink).monitor}"; gpu-screen-recorder -v no -w $WINDOW -c $CONTAINER -q $QUALITY -k $CODEC -ac $AUDIO_CODEC -a "$AUDIO" -f $FRAMERATE -r $REPLAYDURATION -o "$OUTPUTDIR" -mf $MAKEFOLDERS $ADDITIONAL_ARGS'
'';
};
xdg.desktopEntries."com.github.iwalton3.jellyfin-media-player" = {
name = "Jellyfin Media Player";
comment = "Desktop client for Jellyfin";
exec = "jellyfinmediaplayer --platform xcb";
icon = "com.github.iwalton3.jellyfin-media-player";
terminal = false;
type = "Application";
2023-11-22 15:33:16 -05:00
categories = ["AudioVideo" "Video" "Player" "TV"];
settings = {
Version = "1.0";
StartupWMClass = "jellyfin-media-player";
};
actions = {
"DesktopF" = {
name = "Desktop [Fullscreen]";
exec = "jellyfinmediaplayer --fullscreen --desktop --platform xcb";
};
"DesktopW" = {
name = "Desktop [Windowed]";
exec = "jellyfinmediaplayer --windowed --desktop --platform xcb";
};
"TVF" = {
name = "TV [Fullscreen]";
exec = "jellyfinmediaplayer --fullscreen --tv --platform xcb";
};
"TVW" = {
name = "TV [Windowed]";
exec = "jellyfinmediaplayer --windowed --tv --platform xcb";
};
};
};
}