Manage user directories like ~/Desktop and ~/Music
| runtime dependencies | bash (Shell and utilities/Shells) |
|---|---|
| systemd (System Tools) | |
| make dependencies | docbook-xsl |
mkdir /data/buildroot/package/xdg-user-dirs
cat > /data/buildroot/package/xdg-user-dirs/xdg-user-dirs-update.service<< 'EOF'
[Unit]
Description=Update XDG user dir configuration
Documentation=man:xdg-user-dirs-update(1)
[Service]
Type=oneshot
ExecStart=/usr/bin/xdg-user-dirs-update
[Install]
WantedBy=default.target
EOF
cat > /data/buildroot/package/xdg-user-dirs/Config.in<< 'EOF'
config BR2_PACKAGE_XDG_USER_DIRS
bool "xdg-user-dirs"
depends on BR2_PACKAGE_BASH
depends on BR2_PACKAGE_SYSTEMD
help
Manage user directories like ~/Desktop and ~/Music
EOF
cat > /data/buildroot/package/xdg-user-dirs/xdg-user-dirs.mk<< 'EOF'
#############################################################
#
# xdg-user-dirs
#https://gitlab.freedesktop.org/xdg/xdg-user-dirs/-/archive/0.17/xdg-user-dirs-0.17.tar.gz
#############################################################
XDG_USER_DIRS_VERSION = 0.17
XDG_USER_DIRS_SOURCE = xdg-user-dirs-$(XDG_USER_DIRS_VERSION).tar.gz
XDG_USER_DIRS_SITE = https://gitlab.freedesktop.org/xdg/xdg-user-dirs/-/archive/$(XDG_USER_DIRS_VERSION)
XDG_USER_DIRS_DEPENDENCIES = bash systemd
XDG_USER_DIRS_BIN_ARCH_EXCLUDE = /usr/lib
define XDG_USER_DIRS_CONFIGURE_CMDS
cd $(@D)/ && \
NOCONFIGURE=1 ./autogen.sh
endef
define XDG_USER_DIRS_BUILD_CMDS
cd $(@D)/ && \
./configure --prefix=/usr --sysconfdir=/etc && \
make
endef
define XDG_USER_DIRS_INSTALL_TARGET_CMDS
cd $(@D)/ && \
make DESTDIR="${TARGET_DIR}" install
rm "${TARGET_DIR}/etc/xdg/autostart/xdg-user-dirs.desktop"
install -Dt "${TARGET_DIR}/usr/lib/systemd/user" -m644 /data/buildroot/package/xdg-user-dirs/xdg-user-dirs-update.service
endef
$(eval $(generic-package))
EOF
sed -i '/menu "Custom packages"/a source "package/xdg-user-dirs/Config.in"' /data/buildroot/package/Config.in