diff --git a/x11/ly/Makefile b/x11/ly/Makefile index 0811dd9ebb4b..1bead6db3e18 100644 --- a/x11/ly/Makefile +++ b/x11/ly/Makefile @@ -1,64 +1,52 @@ PORTNAME= ly DISTVERSIONPREFIX= v -DISTVERSION= 0.6.0 +DISTVERSION= 1.3.0 CATEGORIES= x11 - -PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/ -PATCHFILES+= 0edb0012abb52ce13d1e9157e7a25557cda01195.patch:-p1 -PATCHFILES+= 42bf929756675f1e6cb922f721665d581574fdc6.patch:-p1 -PATCHFILES+= 2ca870cfc5cd6611bb1fd52dcd67ef40895ad787.patch:-p1 +MASTER_SITES= https://codeberg.org/AnErrupTion/${PORTNAME}/archive/${DISTVERSIONFULL}${EXTRACT_SUFX}?dummy=/ MAINTAINER= bapt@FreeBSD.org COMMENT= TUI (ncurses-like) display manager for X and Wayland -WWW= https://github.com/fairyglade/ly +WWW= https://codeberg.org/AnErrupTion/ly LICENSE= WTFPL LICENSE_FILE= ${WRKSRC}/license.md -USES= gmake localbase xorg -USE_GITHUB= yes -GH_ACCOUNT= fairyglade -GH_TUPLE= nullgemm:argoat:36c41f09ecc2a10c9acf35e4194e08b6fa10cf45:argoat/sub/argoat \ - nullgemm:configator:8227b3a835bf4c7e50a57e4ad6aff620ba0dc349:configator/sub/configator \ - nullgemm:dragonfail:6b40d1f8b7f6dda9746e688666af623dfbcceb94:dragonfail/sub/dragonfail \ - nullgemm:termbox_next:2312da153e44face7bb45aa2798ec284289c17ca:termbox_next/sub/termbox_next +USES= zig pkgconfig xorg USE_XORG= xcb +WRKSRC= ${WRKDIR}/${PORTNAME} -MAKEFILE= makefile -MAKE_ARGS= CC="${CC}" \ - DISTVERSIONFULL="${DISTVERSIONFULL}" -ALL_TARGET= final +USE_GITHUB= yes -SUB_FILES= pkg-message +ZIG_ARGS= -Dprefix_directory="${PREFIX}" \ + -Dconfig_directory="${PREFIX}/etc" \ + -Dinit_system=freebsd -_GITDIR= ${WRKDIR}/${GH_PROJECT}-git - -post-patch: - # Note to maintainers: patches can be regenerated with - # "make clean extract do-patch makepatch" (YMMV). - @${REINPLACE_CMD} "s|%%ETCDIR%%|${ETCDIR}|g" ${WRKSRC}/src/config.c - @${REINPLACE_CMD} -e "s|%%ETCDIR%%|${ETCDIR}|g" \ - -e "s|%%LOCALBASE%%|${LOCALBASE}|g" \ - ${WRKSRC}/res/config.ini - @${REINPLACE_CMD} -e "s|%%LOCALBASE%%|${LOCALBASE}|g" \ - ${WRKSRC}/res/xsetup.sh +GH_TUPLE= Hejsil:zig-clap:5289e0753cd274d65344bef1c114284c6:clap/../zig-packages/clap-0.11.0-oBajB-HnAQDPCKYzwF7rO3qDFwRcD39Q0DALlTSz5H7e \ + AnErrupTion:termbox2:290ac6b8225aacfd16851224682b851b6:termbox2/../zig-packages/N-V-__8AAGcUBQAa5vov1Yi_9AXEffFQ1e2KsXaK4dgygRKq \ + AnErrupTion:zigini:9281f47702b57779e831d7618e158abb8:zigini/../zig-packages/zigini-0.3.3-36M0FRJJAADZVq5HPm-hYKMpFFTr0OgjbEYcK2ijKZ5n \ + AnErrupTion:ini:918f16d0dcf893d0c1cdffe204faa08bb3584e04:ini/../zig-packages/ini-0.1.0-YCQ9Ys0pAABixEvvQvhVXAdqRE3wrZk_wiL9TPNHhB8d post-install: - @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/ly -.for _f in config.ini xsetup.sh wsetup.sh - @${MV} ${STAGEDIR}${ETCDIR}/${_f} \ - ${STAGEDIR}${ETCDIR}/${_f}.sample -.endfor - -# Target for maintainers. Use this target to regenerate GH_TUPLE for Git -# submodules used by the project (and project's dependencies). -_git-submodules-to-gh-tuple: - ${RM} -r ${_GITDIR} - git clone https://github.com/${GH_ACCOUNT}/${GH_PROJECT} ${_GITDIR} - git -C ${_GITDIR} checkout ${GH_TAGNAME} - ${REINPLACE_CMD} 's/make github/${MAKE_CMD} github/g' ${_GITDIR}/makefile - ${MAKE_CMD} -C ${_GITDIR} github - git -C ${_GITDIR} submodule status --recursive | cut -c 2- | \ - ${AWK} -f ${FILESDIR}/git-submodules-to-gh-tuple.awk + ${REINPLACE_CMD} 's,$$PREFIX_DIRECTORY,${PREFIX},g ; s,$$EXECUTABLE_NAME,ly,g' \ + ${WRKSRC}/res/ly-freebsd-wrapper + ${INSTALL_SCRIPT} ${WRKSRC}/res/ly-freebsd-wrapper ${STAGEDIR}${PREFIX}/bin/ly_wrapper + ${INSTALL_DATA} ${WRKSRC}/res/pam.d/ly-freebsd ${STAGEDIR}${PREFIX}/etc/pam.d/ly + ${INSTALL_DATA} ${WRKSRC}/res/pam.d/ly-freebsd-autologin ${STAGEDIR}${PREFIX}/etc/pam.d/ly-autologin + ${MKDIR} ${STAGEDIR}${ETCDIR}/lang + ${INSTALL_DATA} ${WRKSRC}/res/lang/*.ini ${STAGEDIR}${ETCDIR}/lang/ + ${MKDIR} ${STAGEDIR}${ETCDIR}/custom-sessions + ${INSTALL_DATA} ${WRKSRC}/res/custom-sessions/README ${STAGEDIR}${ETCDIR}/custom-sessions + ${REINPLACE_CMD} 's,$$PREFIX_DIRECTORY,${PREFIX},g; \ + s,$$CONFIG_DIRECTORY,${PREFIX}/etc,g ; \ + s,^brightness_down_cmd = .*,brightness_down_cmd = /usr/bin/backlight - 10, ; \ + s,^brightness_up_cmd = .*,brightness_down_cmd = /usr/bin/backlight + 10, ; \ + s,$$PLATFORM_SHUTDOWN_ARG,-p,g' \ + ${WRKSRC}/res/config.ini + ${INSTALL_DATA} ${WRKSRC}/res/config.ini ${STAGEDIR}${ETCDIR}/config.ini.sample + ${REINPLACE_CMD} 's,"$$CONFIG_DIRECTORY"/profile,/etc/profile,g ; \ + s,$$CONFIG_DIRECTORY/csh.login,/etc/csh.login,g ; \ + s,"$$CONFIG_DIRECTORY",${PREFIX}/etc,g ;' \ + ${WRKSRC}/res/setup.sh + ${INSTALL_DATA} ${WRKSRC}/res/setup.sh ${STAGEDIR}${ETCDIR}/setup.sh.sample .include diff --git a/x11/ly/distinfo b/x11/ly/distinfo index b062c1f86c5d..cf92cc1417c6 100644 --- a/x11/ly/distinfo +++ b/x11/ly/distinfo @@ -1,17 +1,11 @@ -TIMESTAMP = 1690811292 -SHA256 (fairyglade-ly-v0.6.0_GH0.tar.gz) = 10b3777f49e0a9370efe5132b3c6618294330700a14a659ee66b5bf313f4baae -SIZE (fairyglade-ly-v0.6.0_GH0.tar.gz) = 32706 -SHA256 (nullgemm-argoat-36c41f09ecc2a10c9acf35e4194e08b6fa10cf45_GH0.tar.gz) = 5c284cae748b1cec4eef311845f53ad673f91996ec425c6e323f0c40e829e77f -SIZE (nullgemm-argoat-36c41f09ecc2a10c9acf35e4194e08b6fa10cf45_GH0.tar.gz) = 5497 -SHA256 (nullgemm-configator-8227b3a835bf4c7e50a57e4ad6aff620ba0dc349_GH0.tar.gz) = bde1826acb80092bd551985082dc872c7f3e48e03132c377f0e5cdd2f9f331e3 -SIZE (nullgemm-configator-8227b3a835bf4c7e50a57e4ad6aff620ba0dc349_GH0.tar.gz) = 4501 -SHA256 (nullgemm-dragonfail-6b40d1f8b7f6dda9746e688666af623dfbcceb94_GH0.tar.gz) = c185f739e392313c08b0d5fd27e93891b89c36b7b49b83570b601b9cbfbddae1 -SIZE (nullgemm-dragonfail-6b40d1f8b7f6dda9746e688666af623dfbcceb94_GH0.tar.gz) = 3348 -SHA256 (nullgemm-termbox_next-2312da153e44face7bb45aa2798ec284289c17ca_GH0.tar.gz) = b788c86e1454c32cd218d0478a87def0a4d1322fef407885359d1ed0c343b045 -SIZE (nullgemm-termbox_next-2312da153e44face7bb45aa2798ec284289c17ca_GH0.tar.gz) = 23558 -SHA256 (0edb0012abb52ce13d1e9157e7a25557cda01195.patch) = 0a9fcc8b04d3c2562dc6c3ed81f643a0431aab862680d05d34f9eaeb07db9471 -SIZE (0edb0012abb52ce13d1e9157e7a25557cda01195.patch) = 739 -SHA256 (42bf929756675f1e6cb922f721665d581574fdc6.patch) = 9328794678317d02ce6ac4b9220c14b55f59923c435a2fab76a05aa45bb8db99 -SIZE (42bf929756675f1e6cb922f721665d581574fdc6.patch) = 25931 -SHA256 (2ca870cfc5cd6611bb1fd52dcd67ef40895ad787.patch) = d0f0f9c4d7d3168916776b6b1df4917bf3d95ca2b61af312cada203f73deefe6 -SIZE (2ca870cfc5cd6611bb1fd52dcd67ef40895ad787.patch) = 1215 +TIMESTAMP = 1766585822 +SHA256 (zig/ly-ly-v1.3.0_GH0.tar.gz) = ced87076b513bda7687a0983238d18d316fbf2382c5bbd9b25b686fc6bf63bb4 +SIZE (zig/ly-ly-v1.3.0_GH0.tar.gz) = 106238 +SHA256 (zig/Hejsil-zig-clap-5289e0753cd274d65344bef1c114284c6_GH0.tar.gz) = 9e3501c9015315a90cbf9c014edad69f37b541df848a92a2d8ff56e93970ebc9 +SIZE (zig/Hejsil-zig-clap-5289e0753cd274d65344bef1c114284c6_GH0.tar.gz) = 25748 +SHA256 (zig/AnErrupTion-termbox2-290ac6b8225aacfd16851224682b851b6_GH0.tar.gz) = 8a913d4921b1400e878b3d7cb49e55a81deac0c67d2245ee5fef88ade70aa177 +SIZE (zig/AnErrupTion-termbox2-290ac6b8225aacfd16851224682b851b6_GH0.tar.gz) = 85503 +SHA256 (zig/AnErrupTion-zigini-9281f47702b57779e831d7618e158abb8_GH0.tar.gz) = 9af7cf5ff80a980887f88cb88842909b662605b38a26270d7a6005a23f01894c +SIZE (zig/AnErrupTion-zigini-9281f47702b57779e831d7618e158abb8_GH0.tar.gz) = 6322 +SHA256 (zig/AnErrupTion-ini-918f16d0dcf893d0c1cdffe204faa08bb3584e04_GH0.tar.gz) = cf620c4b482b7e77f7de1eadcf5111bf68ba81f9d2ea9f28316173f80986a00f +SIZE (zig/AnErrupTion-ini-918f16d0dcf893d0c1cdffe204faa08bb3584e04_GH0.tar.gz) = 8022 diff --git a/x11/ly/files/git-submodules-to-gh-tuple.awk b/x11/ly/files/git-submodules-to-gh-tuple.awk deleted file mode 100644 index 65d524ffdf71..000000000000 --- a/x11/ly/files/git-submodules-to-gh-tuple.awk +++ /dev/null @@ -1,19 +0,0 @@ -#! /usr/bin/awk -f - -BEGIN { - group_number = 0 - printf "GH_TUPLE=" -} - -{ - account = "cylgom" - project = $2 - gsub(".*/", "", project) - hash = $1 - path = $2 - printf " \\\n\t%s:%s:%s:%s/%s", account, project, hash, project, path -} - -END { - printf "\n" -} diff --git a/x11/ly/files/patch-makefile b/x11/ly/files/patch-makefile deleted file mode 100644 index 9c79340c04c1..000000000000 --- a/x11/ly/files/patch-makefile +++ /dev/null @@ -1,54 +0,0 @@ ---- makefile.orig 2023-06-15 07:30:09 UTC -+++ makefile -@@ -3,7 +3,7 @@ FLAGS+= -Wall -Wextra -Werror=vla -Wno-unused-paramete - FLAGS = -std=c99 -pedantic -g - FLAGS+= -Wall -Wextra -Werror=vla -Wno-unused-parameter - #FLAGS+= -DDEBUG --FLAGS+= -DLY_VERSION=\"$(shell git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g')\" -+FLAGS+= -DLY_VERSION=\"${DISTVERSIONFULL}\" - LINK = -lpam -lxcb - VALGRIND = --show-leak-kinds=all --track-origins=yes --leak-check=full --suppressions=../res/valgrind.supp - CMD = ./$(NAME) -@@ -12,6 +12,10 @@ endif - ifeq ($(OS), Linux) - FLAGS+= -D_DEFAULT_SOURCE - endif -+ifeq ($(OS), FreeBSD) -+ FLAGS+= -D_DEFAULT_SOURCE ${CPPFLAGS} ${CFLAGS} -+ LINK+= ${LIBS} -lutil -+endif - - BIND = bin - OBJD = obj -@@ -20,7 +24,7 @@ TESTD = tests - RESD = res - TESTD = tests - --DATADIR ?= ${DESTDIR}/etc/ly -+DATADIR ?= ${DESTDIR}$(PREFIX)/etc/ly - FLAGS+= -DDATADIR=\"$(DATADIR)\" - - INCL = -I$(SRCD) -@@ -71,14 +75,14 @@ install: $(BIND)/$(NAME) - - install: $(BIND)/$(NAME) - @echo "installing ly" -- @install -dZ ${DESTDIR}/etc/ly -- @install -DZ $(BIND)/$(NAME) -t ${DESTDIR}/usr/bin -- @install -DZ $(RESD)/config.ini -t ${DESTDIR}/etc/ly -- @install -DZ $(RESD)/xsetup.sh -t $(DATADIR) -- @install -DZ $(RESD)/wsetup.sh -t $(DATADIR) -- @install -dZ $(DATADIR)/lang -- @install -DZ $(RESD)/lang/* -t $(DATADIR)/lang -- @install -DZ $(RESD)/pam.d/ly -m 644 -t ${DESTDIR}/etc/pam.d -+ @install -d ${DESTDIR}$(PREFIX)/etc/ly -+ @install $(BIND)/$(NAME) ${DESTDIR}$(PREFIX)/bin -+ @install $(RESD)/config.ini ${DESTDIR}$(PREFIX)/etc/ly -+ @install $(RESD)/xsetup.sh $(DATADIR) -+ @install $(RESD)/wsetup.sh $(DATADIR) -+ @install -d $(DATADIR)/lang -+ @install $(RESD)/lang/* $(DATADIR)/lang -+ @install -m 644 $(RESD)/pam.d/ly ${DESTDIR}$(PREFIX)/etc/pam.d - - installnoconf: $(BIND)/$(NAME) - @echo "installing ly without the configuration file" diff --git a/x11/ly/files/patch-res_config.ini b/x11/ly/files/patch-res_config.ini deleted file mode 100644 index 40c6a86c2ee1..000000000000 --- a/x11/ly/files/patch-res_config.ini +++ /dev/null @@ -1,78 +0,0 @@ ---- res/config.ini.orig 2023-07-31 13:38:18 UTC -+++ res/config.ini -@@ -1,3 +1,5 @@ -+# This is a FreeBSD-ready patched version of the upstream configuration file. -+ - # Animation enabled/disabled - #animate = false - -@@ -74,6 +76,7 @@ - - # File in which to save and load the default desktop and login - #save_file = /etc/ly/save -+save_file = /usr/local/etc/ly/save - - - # Remove power management command hints -@@ -87,6 +90,7 @@ - - # Command executed when pressing shutdown_key - #shutdown_cmd = /sbin/shutdown -a now -+shutdown_cmd = /sbin/shutdown -p now - - # Command executed when pressing restart_key - #restart_cmd = /sbin/shutdown -r now -@@ -100,11 +104,16 @@ - # tty in use - #tty = 2 - -+# vt in use by X or Wayland -+#vt = 9 -+ -+ - # Console path - #console_dev = /dev/console - - # Default path - #path = /sbin:/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin -+path = /sbin:/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/bin/env - - - # Event timeout in milliseconds -@@ -118,16 +127,19 @@ - - # Cookie generator - #mcookie_cmd = /usr/bin/mcookie -+mcookie_cmd = /usr/bin/openssl rand -hex 16 - - - # Wayland setup command - #wayland_cmd = /etc/ly/wsetup.sh -+wayland_cmd = /usr/local/etc/ly/wsetup.sh - - # Add wayland specifier to session names - #wayland_specifier = false - - # Wayland desktop environments - #waylandsessions = /usr/share/wayland-sessions -+waylandsessions = /usr/local/share/wayland-sessions - - - # xinitrc -@@ -135,12 +147,16 @@ - - # Xorg server command - #x_cmd = /usr/bin/X -+x_cmd = /usr/local/bin/X - - # Xorg setup command - #x_cmd_setup = /etc/ly/xsetup.sh -+x_cmd_setup = /usr/local/etc/ly/xsetup.sh - - # Xorg xauthority edition tool - #xauth_cmd = /usr/bin/xauth -+xauth_cmd = /usr/local/bin/xauth - - # Xorg desktop environments - #xsessions = /usr/share/xsessions -+xsessions = /usr/local/share/xsessions diff --git a/x11/ly/files/patch-res_xsetup.sh b/x11/ly/files/patch-res_xsetup.sh deleted file mode 100644 index 2020f9c57065..000000000000 --- a/x11/ly/files/patch-res_xsetup.sh +++ /dev/null @@ -1,41 +0,0 @@ ---- res/xsetup.sh.orig 2023-06-15 07:30:09 UTC -+++ res/xsetup.sh -@@ -55,8 +55,8 @@ esac - [ -f $HOME/.xprofile ] && . $HOME/.xprofile - - # run all system xinitrc shell scripts. --if [ -d /etc/X11/xinit/xinitrc.d ]; then -- for i in /etc/X11/xinit/xinitrc.d/* ; do -+if [ -d /usr/local/etc/X11/xinit/xinitrc.d ]; then -+ for i in /usr/local/etc/X11/xinit/xinitrc.d/* ; do - if [ -x "$i" ]; then - . "$i" - fi -@@ -66,8 +66,8 @@ fi - # Load Xsession scripts - # OPTIONFILE, USERXSESSION, USERXSESSIONRC and ALTUSERXSESSION are required - # by the scripts to work --xsessionddir="/etc/X11/Xsession.d" --OPTIONFILE=/etc/X11/Xsession.options -+xsessionddir="/usr/local/etc/X11/Xsession.d" -+OPTIONFILE=/usr/local/etc/X11/Xsession.options - USERXSESSION=$HOME/.xsession - USERXSESSIONRC=$HOME/.xsessionrc - ALTUSERXSESSION=$HOME/.Xsession -@@ -82,12 +82,12 @@ fi - done - fi - --if [ -d /etc/X11/Xresources ]; then -- for i in /etc/X11/Xresources/*; do -+if [ -d /usr/local/etc/X11/Xresources ]; then -+ for i in /usr/local/etc/X11/Xresources/*; do - [ -f $i ] && xrdb -merge $i - done --elif [ -f /etc/X11/Xresources ]; then -- xrdb -merge /etc/X11/Xresources -+elif [ -f /usr/local/etc/X11/Xresources ]; then -+ xrdb -merge /usr/local/etc/X11/Xresources - fi - [ -f $HOME/.Xresources ] && xrdb -merge $HOME/.Xresources - [ -f $XDG_CONFIG_HOME/X11/Xresources ] && xrdb -merge $XDG_CONFIG_HOME/X11/Xresources diff --git a/x11/ly/files/patch-src_config.c b/x11/ly/files/patch-src_config.c deleted file mode 100644 index 26969398c395..000000000000 --- a/x11/ly/files/patch-src_config.c +++ /dev/null @@ -1,38 +0,0 @@ ---- src/config.c.orig 2023-07-31 13:38:18 UTC -+++ src/config.c -@@ -11,8 +11,8 @@ - #include - - #ifndef DEBUG -- #define INI_LANG DATADIR "/lang/%s.ini" -- #define INI_CONFIG "/etc/ly/config.ini" -+ #define INI_LANG "/usr/local/etc/ly/lang/%s.ini" -+ #define INI_CONFIG "/usr/local/etc/ly/config.ini" - #else - #define INI_LANG "../res/lang/%s.ini" - #define INI_CONFIG "../res/config.ini" -@@ -190,6 +190,7 @@ void config_load(const char *cfg_path) - {"shutdown_key", &config.shutdown_key, config_handle_str}, - {"term_reset_cmd", &config.term_reset_cmd, config_handle_str}, - {"tty", &config.tty, config_handle_u8}, -+ {"vt", &config.vt, config_handle_u8}, - {"wayland_cmd", &config.wayland_cmd, config_handle_str}, - {"wayland_specifier", &config.wayland_specifier, config_handle_bool}, - {"waylandsessions", &config.waylandsessions, config_handle_str}, -@@ -200,7 +201,7 @@ void config_load(const char *cfg_path) - {"xsessions", &config.xsessions, config_handle_str}, - }; - -- uint16_t map_len[] = {41}; -+ uint16_t map_len[] = {42}; - struct configator_param* map[] = - { - map_no_section, -@@ -302,6 +303,7 @@ void config_defaults() - config.shutdown_key = strdup("F1"); - config.term_reset_cmd = strdup("/usr/bin/tput reset"); - config.tty = 2; -+ config.vt = 9; - config.wayland_cmd = strdup(DATADIR "/wsetup.sh"); - config.wayland_specifier = false; - config.waylandsessions = strdup("/usr/share/wayland-sessions"); diff --git a/x11/ly/files/patch-src_config.h b/x11/ly/files/patch-src_config.h deleted file mode 100644 index 6a60a97765ec..000000000000 --- a/x11/ly/files/patch-src_config.h +++ /dev/null @@ -1,10 +0,0 @@ ---- src/config.h.orig 2023-07-31 13:27:47 UTC -+++ src/config.h -@@ -94,6 +94,7 @@ struct config - char* shutdown_key; - char* term_reset_cmd; - uint8_t tty; -+ uint8_t vt; - char* wayland_cmd; - bool wayland_specifier; - char* waylandsessions; diff --git a/x11/ly/files/patch-src_login.c b/x11/ly/files/patch-src_login.c deleted file mode 100644 index 0bdfda667e36..000000000000 --- a/x11/ly/files/patch-src_login.c +++ /dev/null @@ -1,144 +0,0 @@ ---- src/login.c.orig 2023-06-15 07:30:09 UTC -+++ src/login.c -@@ -19,9 +19,13 @@ - #include - #include - #include --#include -+#include - #include - -+#include -+#include -+#include -+ - int get_free_display() - { - char xlock[1024]; -@@ -214,13 +218,13 @@ - // clean env - environ[0] = NULL; - -- setenv("TERM", term ? term : "linux", 1); -+ setenv("TERM", term ? term : "xterm", 1); - setenv("HOME", pwd->pw_dir, 1); - setenv("PWD", pwd->pw_dir, 1); - setenv("SHELL", pwd->pw_shell, 1); - setenv("USER", pwd->pw_name, 1); - setenv("LOGNAME", pwd->pw_name, 1); -- setenv("LANG", lang ? lang : "C", 1); -+ setenv("LANG", lang ? lang : "C.UTF-8", 1); - - // Set PATH if specified in the configuration - if (strlen(config.path)) -@@ -259,9 +263,15 @@ - - void env_xdg(const char* tty_id, const char* desktop_name) - { -+ // The "/run/user/%d" directory is not available on FreeBSD. It is much -+ // better to stick to the defaults and let applications using -+ // XDG_RUNTIME_DIR to fall back to directories inside user's home -+ // directory. -+ /* - char user[20]; - snprintf(user, 20, "/run/user/%d", getuid()); - setenv("XDG_RUNTIME_DIR", user, 0); -+ */ - setenv("XDG_SESSION_CLASS", "user", 0); - setenv("XDG_SESSION_ID", "1", 0); - setenv("XDG_SESSION_DESKTOP", desktop_name, 0); -@@ -269,8 +279,8 @@ - setenv("XDG_VTNR", tty_id, 0); - } - --void add_utmp_entry( -- struct utmp *entry, -+void add_utmpx_entry( -+ struct utmpx *entry, - char *username, - pid_t display_pid - ) { -@@ -281,24 +291,23 @@ - /* only correct for ptys named /dev/tty[pqr][0-9a-z] */ - strcpy(entry->ut_id, ttyname(STDIN_FILENO) + strlen("/dev/tty")); - -- time((long int *) &entry->ut_time); -+ time((long int *) &entry->ut_tv.tv_sec); - -- strncpy(entry->ut_user, username, UT_NAMESIZE); -- memset(entry->ut_host, 0, UT_HOSTSIZE); -- entry->ut_addr = 0; -- setutent(); -+ strncpy(entry->ut_user, username, sizeof(entry->ut_user)); -+ memset(entry->ut_host, 0, sizeof(entry->ut_host)); -+ setutxent(); - -- pututline(entry); -+ pututxline(entry); - } - --void remove_utmp_entry(struct utmp *entry) { -+void remove_utmpx_entry(struct utmpx *entry) { - entry->ut_type = DEAD_PROCESS; -- memset(entry->ut_line, 0, UT_LINESIZE); -- entry->ut_time = 0; -- memset(entry->ut_user, 0, UT_NAMESIZE); -- setutent(); -- pututline(entry); -- endutent(); -+ memset(entry->ut_line, 0, sizeof(entry->ut_line)); -+ entry->ut_tv.tv_sec = 0; -+ memset(entry->ut_user, 0, sizeof(entry->ut_user)); -+ setutxent(); -+ pututxline(entry); -+ endutxent(); - } - - void xauth(const char* display_name, const char* shell, char* pwd) -@@ -598,6 +607,16 @@ - exit(EXIT_FAILURE); - } - -+ ok = setusercontext(NULL, pwd, pwd->pw_uid, LOGIN_SETALL); -+ -+ if (ok != 0) -+ { -+ dgn_throw(DGN_USER_UID); -+ exit(EXIT_FAILURE); -+ } -+ -+ /* This is done by setusercontext() on FreeBSD. */ -+#if 0 - ok = setgid(pwd->pw_gid); - - if (ok != 0) -@@ -613,10 +632,11 @@ - dgn_throw(DGN_USER_UID); - exit(EXIT_FAILURE); - } -+#endif - - // get a display - char vt[5]; -- snprintf(vt, 5, "vt%d", config.tty); -++ snprintf(vt, 5, "vt%d", config.vt); - - // set env (this clears the environment) - env_init(pwd); -@@ -671,13 +691,13 @@ - } - - // add utmp audit -- struct utmp entry; -- add_utmp_entry(&entry, pwd->pw_name, pid); -+ struct utmpx entry; -+ add_utmpx_entry(&entry, pwd->pw_name, pid); - - // wait for the session to stop - int status; - waitpid(pid, &status, 0); -- remove_utmp_entry(&entry); -+ remove_utmpx_entry(&entry); - - reset_terminal(pwd); - diff --git a/x11/ly/files/pkg-message.in b/x11/ly/files/pkg-message.in deleted file mode 100644 index a5ea04aca381..000000000000 --- a/x11/ly/files/pkg-message.in +++ /dev/null @@ -1,18 +0,0 @@ -[ -{ type: install - message: <