Compare commits

..

No commits in common. "7d26b7150558c236a49996da5c82dda0547614ee" and "0a51ee40cc9eba5d32dda47c089adbd11a37d352" have entirely different histories.

8 changed files with 7 additions and 53 deletions

View file

@ -19,7 +19,6 @@ enabled_modules:
- forgiving-power-button
- xdg-user-dirs
- atama-branding
- pipewire
# Module processing mode
# parallel: Collect and install all modules at once (faster, default)
@ -77,7 +76,9 @@ services:
# I don't think it's possible to let DCli manage both user and system services at the same time, so I'm commenting-out user services out of this for now
#services:
# enabled:
# - blend-files
# - hyprpolkitagent
# - wireplumber
# disabled: []
# scope: user

View file

@ -1,3 +0,0 @@
description: Packages needed to run the module's hook.
packages:
- bash

View file

@ -1,12 +0,0 @@
#!/bin/bash
# extra precautions until run_hooks_as_user: true is fixed
if [ -n "$SUDO_USER" ] && [ "$EUID" == 0 ]; then
exec su "$SUDO_USER" $0;
fi
systemctl --user enable wireplumber.service --now
if [ "$?" -ne 0 ]; then
echo "[WARN] You seem to be running a SystemD-less distro, so WirePlumber couldn't be started automatically. This is not that big of a deal; just start it (AS A USER SERVICE!) manually yourself, according to however your init system works.";
exit 0;
fi

View file

@ -1,14 +0,0 @@
description: Installs all Pipewire components needed for a functioning session - including Pipewire itself, support for various common audio protocols (alsa, PulseAudio, JACK), libcamera support, and WirePlumber for maintaining a Pipewire session. WirePlumber also be set to auto-start for user sessions (for whoever ran DCli) on SystemD-based distros.
package-files:
- dependencies.yaml
- packages.yaml
post_install_hook: "hook.sh" #I'd love to not need a hook for this, but it seems that service management isn't possible in DCli modules (yet?), and can only be done in the host-file or via a hook.
post_disable_hook: "unhook.sh" #No matter what I tried, I couldn't get this hook to actually trigger, so it seems to be an in-development stub that doesn't work yet (especially given how there was literally 0 documentation on this - I simply spotted it being listed in auto-generated modules). For now, the unhook script has to be run manually if you want to undo the power button setup. Nevertheless, it's listed here, so it should Just Work [TM] when DCli adds support.
run_hooks_as_user: true
hook_behavior: always #...instead of "once" because this lets your service setup be self-healing (even if you mess something up, next dcli sync will restore it); ...instead of "ask" because I don't like pestering people with RUN THIS HOOK? RUN THIS HOOK? (if anything, that makes it more likely that they will "[S]kip always", thus rendering the „self-healing” non-functional)
author: "Guzio"
version: "1.0.0"
category: "media"
tags: []
license: "MIT"
upstream_url: "https://gitdab.com/Guzio/system/src/branch/main/modules/pipewire"

View file

@ -1,9 +0,0 @@
description: Pipewire packages
packages:
- pipewire
- pipewire-audio
- pipewire-alsa
- pipewire-pulse
- pipewire-jack
- pipewire-libcamera
- wireplumber

View file

@ -1,12 +0,0 @@
#!/bin/bash
# extra precautions until run_hooks_as_user: true is fixed
if [ -n "$SUDO_USER" ] && [ "$EUID" == 0 ]; then
exec su "$SUDO_USER" $0;
fi
systemctl --user disable wireplumber.service --now
if [ "$?" -ne 0 ]; then
echo "[WARN] You seem to be running a SystemD-less distro, so WirePlumber couldn't be stopped automatically. This is not that big of a deal; just stop it (AS A USER SERVICE!) manually yourself, according to however your init system works.";
exit 0;
fi

View file

@ -41,6 +41,9 @@ packages:
- 'glm' #Needed by: Hyprgrass
- 'iio-sensor-proxy' #Command: monitor-sensors; Needed for: custom rotate scripts
- 'wl-clip-persist' #Provides the most basic fucking functionality that exists on literally every OS on Earth ever, ie. the ability to paste from clipboard after the app that copied stuff there closes. How the FUCK is this not a standard on Wayland???
- 'pipewire-alsa' #Audio won't work without it (idk what cause it to no-longer-be-autoinstalled, all I know is that it suddenly stopped working)
- 'pipewire-pulse' #Bluetooth audio won't work without it (?????? https://bbs.archlinux.org/viewtopic.php?id=304269 ??)
- 'pipewire-jack' #My pronouns are all/in
deb_packages: []
exclude: []
conflicts: []

View file

@ -1,11 +1,11 @@
description: Configures XDG directories the xdg-user-dirs package (for whoever ran DCli), if not configured already. Otherwise, it just installs the xdg-user-dirs package, which can still be useful for querying said dirs.
description: Configures XDG directories the xdg-user-dirs package, if not configured already. Otherwise, it just installs the xdg-user-dirs package, which can still be useful for querying said dirs.
package-files:
- dependencies.yaml
post_install_hook: "hook.sh"
run_hooks_as_user: true
hook_behavior: always #...instead of "once" because the XDG spec can change from time to time (eg. the recent Projects dir), and we want to make sure that the user's keeps up.; ...instead of "ask" because I don't like pestering people with RUN THIS HOOK? RUN THIS HOOK? questions; ...because running this command multiple times is safe, anyway - it only fixes/adds broken/missing entires as it encounters them instead of overwriting everything or something like that (arguably, this makes "always" safer than "once"/"ask" because it makes your config self-healing)
author: "Guzio"
version: "1.0.2"
version: "1.0.1"
category: "media"
tags: []
license: "MIT"