diff options
-rw-r--r-- | x11-wm/sway/Makefile | 10 | ||||
-rw-r--r-- | x11-wm/sway/files/swayterm | 50 | ||||
-rw-r--r-- | x11-wm/sway/pkg-plist | 2 |
3 files changed, 62 insertions, 0 deletions
diff --git a/x11-wm/sway/Makefile b/x11-wm/sway/Makefile index 0d87f2ea541f..dd75d4ea3885 100644 --- a/x11-wm/sway/Makefile +++ b/x11-wm/sway/Makefile @@ -3,6 +3,7 @@ PORTNAME= sway DISTVERSION= 1.0-beta.2-189 DISTVERSIONSUFFIX= -g2573606b +PORTREVISION= 1 CATEGORIES= x11-wm MAINTAINER= jbeich@FreeBSD.org @@ -46,8 +47,17 @@ post-patch: # Let @sample handle default files under etc/ @${REINPLACE_CMD} -e '/config\.in/{ N; s/@BASENAME@/&.sample/; }' \ ${WRKSRC}/meson.build +# Let terminal chooser pick default + @${REINPLACE_CMD} -e 's/urxvt/swayterm/' \ + ${WRKSRC}/config.in post-patch-MANPAGES-off: @${REINPLACE_CMD} -i '' "s/'scdoc/&-disabled/" ${WRKSRC}/meson.build +post-install: + ${INSTALL_SCRIPT} ${FILESDIR}/swayterm ${STAGEDIR}${PREFIX}/bin + ${MKDIR} ${STAGEDIR}${ETCDIR}/config.d +# x11/libxkbcommon has --with-default-rules="xorg" but x11/libinput expects "evdev" + ${ECHO_CMD} 'input * xkb_rules evdev' >${STAGEDIR}${ETCDIR}/config.d/evdev + .include <bsd.port.mk> diff --git a/x11-wm/sway/files/swayterm b/x11-wm/sway/files/swayterm new file mode 100644 index 000000000000..1a550fb14e18 --- /dev/null +++ b/x11-wm/sway/files/swayterm @@ -0,0 +1,50 @@ +#!/bin/sh +# +# This file is in the public domain. It is based on i3-sensible-terminal. +# +# Find a terminal emulator among the list of known ones. Prefer user +# default ($TERMINAL), system default (x-terminal-emulator on Debian) +# then Wayland-native with few dependencies. +# +# See also https://lists.freedesktop.org/archives/xdg/2015-October/013583.html + +KNOWN_TERMINALS=' + alacritty + sakura + termite + termit + tilix + kitty + cool-retro-term + qterminal + roxterm + xfce4-terminal + pantheon-terminal + terminology + gnome-terminal + mate-terminal + konsole + aminal + evilvte + mlterm + lxterminal + lilyterm + terminator + hyper + mrxvt + urxvt + xterm + st + Eterm + rxvt + aterm +' + +for command in "$TERMINAL" x-terminal-emulator $KNOWN_TERMINALS; do + if hash "$command" 2>/dev/null; then + exec "$command" "$@" + fi +done + +swaynag -m "${0##*/} could not find a terminal emulator. Please, \ +either install one, define \$TERMINAL or adjust Sway config." diff --git a/x11-wm/sway/pkg-plist b/x11-wm/sway/pkg-plist index 6c05cb981dc8..d91f83c87602 100644 --- a/x11-wm/sway/pkg-plist +++ b/x11-wm/sway/pkg-plist @@ -3,6 +3,8 @@ bin/swaybar bin/swaybg bin/swaymsg bin/swaynag +bin/swayterm +%%ETCDIR%%/config.d/evdev @sample %%ETCDIR%%/config.sample %%ETCDIR%%/security.d/10-freebsd %%MANPAGES%%man/man1/sway.1.gz |