mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-26 09:46:09 +00:00
x11-wm/sway: add new port
Sway is a tiling Wayland compositor and a drop-in replacement for the i3 window manager for X11. It works with your existing i3 configuration and supports most of i3's features, plus a few extras. https://swaywm.org/
This commit is contained in:
parent
8520857832
commit
71c50e1481
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=489493
@ -1672,6 +1672,7 @@
|
||||
SUBDIR += saxon-he
|
||||
SUBDIR += scancode-toolkit
|
||||
SUBDIR += sc-aspell
|
||||
SUBDIR += scdoc
|
||||
SUBDIR += scew
|
||||
SUBDIR += scim
|
||||
SUBDIR += scim-bridge
|
||||
|
30
textproc/scdoc/Makefile
Normal file
30
textproc/scdoc/Makefile
Normal file
@ -0,0 +1,30 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= scdoc
|
||||
DISTVERSION= 1.6.0
|
||||
CATEGORIES= textproc
|
||||
MASTER_SITES= https://git.sr.ht/~sircmpwn/${PORTNAME}/archive/
|
||||
DISTFILES= ${DISTVERSIONFULL}${EXTRACT_SUFX}
|
||||
DIST_SUBDIR= ${PORTNAME}
|
||||
|
||||
MAINTAINER= jbeich@FreeBSD.org
|
||||
COMMENT= Simple man page generator for POSIX systems written in C99
|
||||
|
||||
LICENSE= MIT
|
||||
LICENSE_FILE= ${WRKSRC}/COPYING
|
||||
|
||||
USES= gmake
|
||||
TEST_TARGET= check
|
||||
PLIST_FILES= bin/scdoc \
|
||||
man/man1/scdoc.1.gz \
|
||||
man/man5/scdoc.5.gz
|
||||
|
||||
post-patch:
|
||||
@${REINPLACE_CMD} -e 's,share/man,man,' \
|
||||
-e '/BIN/s,install -Dm755,${INSTALL_PROGRAM},' \
|
||||
-e '/MAN/s,install -Dm644,${INSTALL_MAN},' \
|
||||
${WRKSRC}/Makefile
|
||||
@${REINPLACE_CMD} -i '' 's,--date=,-f "%F %T %z" ,' \
|
||||
${WRKSRC}/test/preamble
|
||||
|
||||
.include <bsd.port.mk>
|
3
textproc/scdoc/distinfo
Normal file
3
textproc/scdoc/distinfo
Normal file
@ -0,0 +1,3 @@
|
||||
TIMESTAMP = 1542554764
|
||||
SHA256 (scdoc/1.6.0.tar.gz) = a396bc070c8734d7cafe3a3481c8cffacd83b3effdeb28de43e2cdac889643b1
|
||||
SIZE (scdoc/1.6.0.tar.gz) = 10937
|
3
textproc/scdoc/pkg-descr
Normal file
3
textproc/scdoc/pkg-descr
Normal file
@ -0,0 +1,3 @@
|
||||
scdoc is a simple man page generator for POSIX systems written in C99.
|
||||
|
||||
WWW: https://git.sr.ht/~sircmpwn/scdoc/
|
@ -285,6 +285,7 @@
|
||||
SUBDIR += vte
|
||||
SUBDIR += vte-reference
|
||||
SUBDIR += vte3
|
||||
SUBDIR += wlroots
|
||||
SUBDIR += wmapp
|
||||
SUBDIR += wxgtk28
|
||||
SUBDIR += wxgtk28-common
|
||||
|
53
x11-toolkits/wlroots/Makefile
Normal file
53
x11-toolkits/wlroots/Makefile
Normal file
@ -0,0 +1,53 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= wlroots
|
||||
DISTVERSION= 0.2
|
||||
CATEGORIES= x11-toolkits
|
||||
|
||||
PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/
|
||||
PATCHFILES= 92e39b586c0e.patch:-p1
|
||||
|
||||
MAINTAINER= jbeich@FreeBSD.org
|
||||
COMMENT= Modular Wayland compositor library
|
||||
|
||||
LICENSE= MIT
|
||||
LICENSE_FILE= ${WRKSRC}/LICENSE
|
||||
|
||||
BUILD_DEPENDS= evdev-proto>0:devel/evdev-proto \
|
||||
wayland-protocols>=1.15:graphics/wayland-protocols
|
||||
LIB_DEPENDS= libudev.so:devel/libudev-devd \
|
||||
libdrm.so:graphics/libdrm \
|
||||
libwayland-egl.so:graphics/wayland \
|
||||
libinput.so:x11/libinput \
|
||||
libxkbcommon.so:x11/libxkbcommon
|
||||
|
||||
USES= compiler:c11 gl meson pkgconfig
|
||||
USE_GITHUB= yes
|
||||
USE_GL= egl gbm glesv2
|
||||
USE_XORG= pixman
|
||||
USE_LDCONFIG= yes
|
||||
GH_ACCOUNT= swaywm
|
||||
MESON_ARGS= -Dexamples=false
|
||||
|
||||
# https://github.com/swaywm/wlroots/issues/1450
|
||||
LLD_UNSAFE= yes
|
||||
|
||||
OPTIONS_DEFINE= X11
|
||||
OPTIONS_DEFAULT=X11
|
||||
OPTIONS_SUB= yes
|
||||
|
||||
X11_LIB_DEPENDS=libxcb-icccm.so:x11/xcb-util-wm
|
||||
X11_USE= XORG=x11,xcb
|
||||
X11_MESON_ON= -Dx11-backend=enabled -Dxcb-icccm=enabled -Dxwayland=enabled
|
||||
X11_MESON_OFF= -Dx11-backend=disabled -Dxcb-icccm=disabled -Dxwayland=disabled
|
||||
|
||||
# https://github.com/swaywm/wlroots/commit/f8428d1063c6
|
||||
.if exists(${.CURDIR:H:H}/x11/xcb-util-errors)
|
||||
X11_LIB_DEPENDS+= libxcb-errors.so:x11/xcb-util-errors
|
||||
.endif
|
||||
|
||||
post-patch:
|
||||
# Ignore unused dependencies
|
||||
@${REINPLACE_CMD} '/examples/d' ${WRKSRC}/meson.build
|
||||
|
||||
.include <bsd.port.mk>
|
5
x11-toolkits/wlroots/distinfo
Normal file
5
x11-toolkits/wlroots/distinfo
Normal file
@ -0,0 +1,5 @@
|
||||
TIMESTAMP = 1543408964
|
||||
SHA256 (swaywm-wlroots-0.2_GH0.tar.gz) = 0b690c5db5a1f11051a28f0349655322fe54d92f7c2dc8d3c6e5559b1098bfd8
|
||||
SIZE (swaywm-wlroots-0.2_GH0.tar.gz) = 437638
|
||||
SHA256 (92e39b586c0e.patch) = 82b0982fb734fbc28be5a41d84d4652a172711ca10872b7f4b9139f13b2747d0
|
||||
SIZE (92e39b586c0e.patch) = 535
|
@ -0,0 +1,26 @@
|
||||
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=231425
|
||||
|
||||
In file included from ../sway/ipc-json.c:7:
|
||||
In file included from ../include/sway/ipc-json.h:5:
|
||||
In file included from ../include/sway/input/input-manager.h:6:
|
||||
In file included from ../include/sway/server.h:9:
|
||||
In file included from /usr/local/include/wlr/types/wlr_data_device.h:13:
|
||||
/usr/local/include/wlr/types/wlr_seat.h:197:18: error: field has incomplete type 'struct timespec'
|
||||
struct timespec last_event;
|
||||
^
|
||||
/usr/local/include/wlr/types/wlr_output.h:123:9: note: forward declaration of 'struct timespec'
|
||||
struct timespec *when;
|
||||
^
|
||||
|
||||
--- include/wlr/types/wlr_seat.h.orig 2019-01-04 15:02:33 UTC
|
||||
+++ include/wlr/types/wlr_seat.h
|
||||
@@ -10,6 +10,9 @@
|
||||
#define WLR_TYPES_WLR_SEAT_H
|
||||
|
||||
#include <time.h>
|
||||
+#if defined(_C11_SOURCE) && defined(__FreeBSD__) && __FreeBSD__ < 12
|
||||
+#include <sys/_timespec.h>
|
||||
+#endif
|
||||
#include <wayland-server.h>
|
||||
#include <wlr/types/wlr_input_device.h>
|
||||
#include <wlr/types/wlr_keyboard.h>
|
30
x11-toolkits/wlroots/pkg-descr
Normal file
30
x11-toolkits/wlroots/pkg-descr
Normal file
@ -0,0 +1,30 @@
|
||||
Pluggable, composable, unopinionated modules for building a Wayland
|
||||
compositor; or about 50,000 lines of code you were going to write anyway.
|
||||
|
||||
- wlroots provides backends that abstract the underlying display and input
|
||||
hardware, including KMS/DRM, libinput, Wayland, X11, and headless backends,
|
||||
plus any custom backends you choose to write, which can all be created or
|
||||
destroyed at runtime and used in concert with each other.
|
||||
- wlroots provides unopinionated, mostly standalone implementations of many
|
||||
Wayland interfaces, both from wayland.xml and various protocol extensions.
|
||||
We also promote the standardization of portable extensions across
|
||||
many compositors.
|
||||
- wlroots provides several powerful, standalone, and optional tools that
|
||||
implement components common to many compositors, such as the arrangement of
|
||||
outputs in physical space.
|
||||
- wlroots provides an Xwayland abstraction that allows you to have excellent
|
||||
Xwayland support without worrying about writing your own X11 window manager
|
||||
on top of writing your compositor.
|
||||
- wlroots provides a renderer abstraction that simple compositors can use to
|
||||
avoid writing GL code directly, but which steps out of the way when your
|
||||
needs demand custom rendering code.
|
||||
|
||||
wlroots implements a huge variety of Wayland compositor features and implements
|
||||
them *right*, so you can focus on the features that make your compositor
|
||||
unique. By using wlroots, you get high performance, excellent hardware
|
||||
compatibility, broad support for many wayland interfaces, and comfortable
|
||||
development tools - or any subset of these features you like, because all of
|
||||
them work independently of one another and freely compose with anything you want
|
||||
to implement yourself.
|
||||
|
||||
WWW: https://github.com/swaywm/wlroots
|
76
x11-toolkits/wlroots/pkg-plist
Normal file
76
x11-toolkits/wlroots/pkg-plist
Normal file
@ -0,0 +1,76 @@
|
||||
include/wlr/backend.h
|
||||
include/wlr/backend/drm.h
|
||||
include/wlr/backend/headless.h
|
||||
include/wlr/backend/interface.h
|
||||
include/wlr/backend/libinput.h
|
||||
include/wlr/backend/multi.h
|
||||
include/wlr/backend/session.h
|
||||
include/wlr/backend/session/interface.h
|
||||
include/wlr/backend/wayland.h
|
||||
%%X11%%include/wlr/backend/x11.h
|
||||
include/wlr/config.h
|
||||
include/wlr/interfaces/wlr_input_device.h
|
||||
include/wlr/interfaces/wlr_keyboard.h
|
||||
include/wlr/interfaces/wlr_output.h
|
||||
include/wlr/interfaces/wlr_pointer.h
|
||||
include/wlr/interfaces/wlr_tablet_pad.h
|
||||
include/wlr/interfaces/wlr_tablet_tool.h
|
||||
include/wlr/interfaces/wlr_touch.h
|
||||
include/wlr/render/dmabuf.h
|
||||
include/wlr/render/egl.h
|
||||
include/wlr/render/gles2.h
|
||||
include/wlr/render/interface.h
|
||||
include/wlr/render/wlr_renderer.h
|
||||
include/wlr/render/wlr_texture.h
|
||||
include/wlr/types/wlr_box.h
|
||||
include/wlr/types/wlr_buffer.h
|
||||
include/wlr/types/wlr_compositor.h
|
||||
include/wlr/types/wlr_cursor.h
|
||||
include/wlr/types/wlr_data_device.h
|
||||
include/wlr/types/wlr_export_dmabuf_v1.h
|
||||
include/wlr/types/wlr_gamma_control.h
|
||||
include/wlr/types/wlr_gamma_control_v1.h
|
||||
include/wlr/types/wlr_gtk_primary_selection.h
|
||||
include/wlr/types/wlr_idle.h
|
||||
include/wlr/types/wlr_idle_inhibit_v1.h
|
||||
include/wlr/types/wlr_input_device.h
|
||||
include/wlr/types/wlr_input_inhibitor.h
|
||||
include/wlr/types/wlr_input_method_v2.h
|
||||
include/wlr/types/wlr_keyboard.h
|
||||
include/wlr/types/wlr_layer_shell_v1.h
|
||||
include/wlr/types/wlr_linux_dmabuf_v1.h
|
||||
include/wlr/types/wlr_list.h
|
||||
include/wlr/types/wlr_matrix.h
|
||||
include/wlr/types/wlr_output.h
|
||||
include/wlr/types/wlr_output_damage.h
|
||||
include/wlr/types/wlr_output_layout.h
|
||||
include/wlr/types/wlr_pointer.h
|
||||
include/wlr/types/wlr_presentation_time.h
|
||||
include/wlr/types/wlr_region.h
|
||||
include/wlr/types/wlr_screencopy_v1.h
|
||||
include/wlr/types/wlr_screenshooter.h
|
||||
include/wlr/types/wlr_seat.h
|
||||
include/wlr/types/wlr_server_decoration.h
|
||||
include/wlr/types/wlr_surface.h
|
||||
include/wlr/types/wlr_tablet_pad.h
|
||||
include/wlr/types/wlr_tablet_tool.h
|
||||
include/wlr/types/wlr_tablet_v2.h
|
||||
include/wlr/types/wlr_text_input_v3.h
|
||||
include/wlr/types/wlr_touch.h
|
||||
include/wlr/types/wlr_virtual_keyboard_v1.h
|
||||
include/wlr/types/wlr_wl_shell.h
|
||||
include/wlr/types/wlr_xcursor_manager.h
|
||||
include/wlr/types/wlr_xdg_decoration_v1.h
|
||||
include/wlr/types/wlr_xdg_output_v1.h
|
||||
include/wlr/types/wlr_xdg_shell.h
|
||||
include/wlr/types/wlr_xdg_shell_v6.h
|
||||
include/wlr/util/edges.h
|
||||
include/wlr/util/log.h
|
||||
include/wlr/util/region.h
|
||||
include/wlr/version.h
|
||||
include/wlr/xcursor.h
|
||||
%%X11%%include/wlr/xwayland.h
|
||||
lib/libwlroots.so
|
||||
lib/libwlroots.so.0
|
||||
lib/libwlroots.so.0.0.0
|
||||
libdata/pkgconfig/wlroots.pc
|
@ -116,6 +116,7 @@
|
||||
SUBDIR += spectrwm
|
||||
SUBDIR += stumpwm
|
||||
SUBDIR += subtle
|
||||
SUBDIR += sway
|
||||
SUBDIR += tinywm
|
||||
SUBDIR += transset
|
||||
SUBDIR += treewm
|
||||
|
53
x11-wm/sway/Makefile
Normal file
53
x11-wm/sway/Makefile
Normal file
@ -0,0 +1,53 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= sway
|
||||
DISTVERSION= 1.0-beta.2
|
||||
CATEGORIES= x11-wm
|
||||
|
||||
PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/
|
||||
PATCHFILES= 4a11d0e470bc.patch:-p1
|
||||
|
||||
MAINTAINER= jbeich@FreeBSD.org
|
||||
COMMENT= i3-compatible Wayland compositor
|
||||
|
||||
LICENSE= MIT
|
||||
LICENSE_FILE= ${WRKSRC}/LICENSE
|
||||
|
||||
BUILD_DEPENDS= evdev-proto>0:devel/evdev-proto \
|
||||
wayland-protocols>=1.14:graphics/wayland-protocols
|
||||
LIB_DEPENDS= libjson-c.so:devel/json-c \
|
||||
libpcre.so:devel/pcre \
|
||||
libwayland-egl.so:graphics/wayland \
|
||||
libwlroots.so:x11-toolkits/wlroots \
|
||||
libinput.so:x11/libinput \
|
||||
libxkbcommon.so:x11/libxkbcommon
|
||||
|
||||
USES= compiler:c11 gnome meson pkgconfig
|
||||
USE_GITHUB= yes
|
||||
USE_GNOME= cairo gdkpixbuf2 pango
|
||||
USE_XORG= pixman
|
||||
GH_ACCOUNT= swaywm
|
||||
MESON_ARGS= -Dsway-version="${DISTVERSIONFULL}"
|
||||
|
||||
OPTIONS_DEFINE= MANPAGES SUID X11
|
||||
OPTIONS_DEFAULT=MANPAGES SUID X11
|
||||
OPTIONS_SUB= yes
|
||||
|
||||
MANPAGES_BUILD_DEPENDS= scdoc:textproc/scdoc
|
||||
|
||||
SUID_DESC= Install with setuid bit set
|
||||
SUID_PLIST_SUB= MAYBE_SUID="@(,,4755) "
|
||||
SUID_PLIST_SUB_OFF= MAYBE_SUID=""
|
||||
|
||||
X11_USE= XORG=xcb
|
||||
X11_MESON_TRUE= enable-xwayland
|
||||
|
||||
post-patch:
|
||||
# Let @sample handle default files under etc/
|
||||
@${REINPLACE_CMD} -e '/config\.in/{ N; s/@BASENAME@/&.sample/; }' \
|
||||
${WRKSRC}/meson.build
|
||||
|
||||
post-patch-MANPAGES-off:
|
||||
@${REINPLACE_CMD} -i '' "s/'scdoc/&-disabled/" ${WRKSRC}/meson.build
|
||||
|
||||
.include <bsd.port.mk>
|
5
x11-wm/sway/distinfo
Normal file
5
x11-wm/sway/distinfo
Normal file
@ -0,0 +1,5 @@
|
||||
TIMESTAMP = 1543479000
|
||||
SHA256 (swaywm-sway-1.0-beta.2_GH0.tar.gz) = a0e93b8ac51fa2edbf8fbe007f716ac934efa77c35b1a76f400819500fdf20c1
|
||||
SIZE (swaywm-sway-1.0-beta.2_GH0.tar.gz) = 5454362
|
||||
SHA256 (4a11d0e470bc.patch) = 28717caa49c53130d995ae8e81bc958a5e4d7afc6b836986776519a5e94693cc
|
||||
SIZE (4a11d0e470bc.patch) = 2950
|
5
x11-wm/sway/pkg-descr
Normal file
5
x11-wm/sway/pkg-descr
Normal file
@ -0,0 +1,5 @@
|
||||
Sway is a tiling Wayland compositor and a drop-in replacement for the
|
||||
i3 window manager for X11. It works with your existing i3 configuration
|
||||
and supports most of i3's features, plus a few extras.
|
||||
|
||||
WWW: https://swaywm.org/
|
41
x11-wm/sway/pkg-plist
Normal file
41
x11-wm/sway/pkg-plist
Normal file
@ -0,0 +1,41 @@
|
||||
%%MAYBE_SUID%%bin/sway
|
||||
bin/swaybar
|
||||
bin/swaybg
|
||||
bin/swayidle
|
||||
bin/swaylock
|
||||
bin/swaymsg
|
||||
bin/swaynag
|
||||
etc/pam.d/swaylock
|
||||
@sample %%ETCDIR%%/config.sample
|
||||
%%ETCDIR%%/security.d/10-freebsd
|
||||
%%MANPAGES%%man/man1/sway.1.gz
|
||||
%%MANPAGES%%man/man1/swayidle.1.gz
|
||||
%%MANPAGES%%man/man1/swaylock.1.gz
|
||||
%%MANPAGES%%man/man1/swaymsg.1.gz
|
||||
%%MANPAGES%%man/man1/swaynag.1.gz
|
||||
%%MANPAGES%%man/man5/sway-bar.5.gz
|
||||
%%MANPAGES%%man/man5/sway-input.5.gz
|
||||
%%MANPAGES%%man/man5/sway-output.5.gz
|
||||
%%MANPAGES%%man/man5/sway.5.gz
|
||||
%%MANPAGES%%man/man5/swaynag.5.gz
|
||||
share/backgrounds/sway/Sway_Wallpaper_Blue_1136x640.png
|
||||
share/backgrounds/sway/Sway_Wallpaper_Blue_1136x640_Portrait.png
|
||||
share/backgrounds/sway/Sway_Wallpaper_Blue_1366x768.png
|
||||
share/backgrounds/sway/Sway_Wallpaper_Blue_1920x1080.png
|
||||
share/backgrounds/sway/Sway_Wallpaper_Blue_2048x1536.png
|
||||
share/backgrounds/sway/Sway_Wallpaper_Blue_2048x1536_Portrait.png
|
||||
share/backgrounds/sway/Sway_Wallpaper_Blue_768x1024.png
|
||||
share/backgrounds/sway/Sway_Wallpaper_Blue_768x1024_Portrait.png
|
||||
share/bash-completion/completions/sway
|
||||
share/bash-completion/completions/swayidle
|
||||
share/bash-completion/completions/swaylock
|
||||
share/bash-completion/completions/swaymsg
|
||||
share/fish/completions/sway.fish
|
||||
share/fish/completions/swayidle.fish
|
||||
share/fish/completions/swaylock.fish
|
||||
share/fish/completions/swaymsg.fish
|
||||
share/fish/completions/swaynag.fish
|
||||
share/wayland-sessions/sway.desktop
|
||||
share/zsh/site-functions/_sway
|
||||
share/zsh/site-functions/_swaylock
|
||||
share/zsh/site-functions/_swaymsg
|
Loading…
Reference in New Issue
Block a user