From 71d681d5bdff47322adf42a8513e41370660d8e6 Mon Sep 17 00:00:00 2001 From: Jan Beich Date: Wed, 30 Jun 2021 23:32:08 +0000 Subject: x11/nwg-bar: add new port nwg-bar is a Golang replacement to the nwgbar command (a part of nwg-launchers), with some improvements. Aimed at sway, works with wlroots-based compositors only. The nwg-bar command creates a button bar on the basis of a JSON template placed in the ~/.config/nwg-bar/ folder. By default the command displays a horizontal bar in the center of the screen. Use command line arguments to change the placement. https://github.com/nwg-piotr/nwg-bar --- x11/Makefile | 1 + x11/nwg-bar/Makefile | 43 +++++++++++++++++++++++++++++++++ x11/nwg-bar/distinfo | 19 +++++++++++++++ x11/nwg-bar/files/patch-config_bar.json | 18 ++++++++++++++ x11/nwg-bar/pkg-descr | 10 ++++++++ 5 files changed, 91 insertions(+) create mode 100644 x11/nwg-bar/Makefile create mode 100644 x11/nwg-bar/distinfo create mode 100644 x11/nwg-bar/files/patch-config_bar.json create mode 100644 x11/nwg-bar/pkg-descr diff --git a/x11/Makefile b/x11/Makefile index 6199ad127037..b5c59766fce1 100644 --- a/x11/Makefile +++ b/x11/Makefile @@ -248,6 +248,7 @@ SUBDIR += nvidia-secondary-driver-390 SUBDIR += nvidia-settings SUBDIR += nvidia-xconfig + SUBDIR += nwg-bar SUBDIR += nwg-dock SUBDIR += nwg-drawer SUBDIR += nwg-launchers diff --git a/x11/nwg-bar/Makefile b/x11/nwg-bar/Makefile new file mode 100644 index 000000000000..246113dc555b --- /dev/null +++ b/x11/nwg-bar/Makefile @@ -0,0 +1,43 @@ +PORTNAME= nwg-bar +DISTVERSIONPREFIX= v +DISTVERSION= 0.0.1 +CATEGORIES= x11 + +MAINTAINER= jbeich@FreeBSD.org +COMMENT= GTK3-based button bar for sway and other wlroots-based compositors + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ + libgtk-layer-shell.so:x11-toolkits/gtk-layer-shell + +USES= gnome go:modules pkgconfig +USE_GITHUB= yes +USE_GNOME= cairo gdkpixbuf2 gtk30 +GH_ACCOUNT= nwg-piotr +GH_TUPLE= allan-simon:go-singleinstance:d0997106ab37:allan_simon_go_singleinstance/vendor/github.com/allan-simon/go-singleinstance \ + dlasky:gotk3-layershell:5cca0b819261:dlasky_gotk3_layershell/vendor/github.com/dlasky/gotk3-layershell \ + golang:sync:56d357773e84:golang_sync/vendor/golang.org/x/sync \ + gotk3:gotk3:v0.6.0:gotk3_gotk3/vendor/github.com/gotk3/gotk3 \ + joshuarubin:go-sway:v0.0.4:joshuarubin_go_sway/vendor/github.com/joshuarubin/go-sway \ + joshuarubin:lifecycle:v1.0.0:joshuarubin_lifecycle/vendor/github.com/joshuarubin/lifecycle \ + uber-go:atomic:v1.3.2:uber_go_atomic/vendor/go.uber.org/atomic \ + uber-go:multierr:v1.1.0:uber_go_multierr/vendor/go.uber.org/multierr +CGO_LDFLAGS+= -Wl,--as-needed # harfbuzz, freetype2 +PLIST_FILES= bin/${PORTNAME} +PORTDATA= images *.css *.json + +post-patch: +# Respect PREFIX for *.desktop + @${REINPLACE_CMD} 's,/usr/share,${DATADIR:H},' \ + ${WRKSRC}/config/*.json \ + ${WRKSRC}/tools.go + +post-install: +# Based on install from WRKSRC/Makefile + @${CP} -p ${WRKSRC}/config/* ${WRKSRC} + (cd ${WRKSRC} && ${COPYTREE_SHARE} "${PORTDATA}" \ + ${STAGEDIR}${DATADIR}) + +.include diff --git a/x11/nwg-bar/distinfo b/x11/nwg-bar/distinfo new file mode 100644 index 000000000000..a283d33bf65c --- /dev/null +++ b/x11/nwg-bar/distinfo @@ -0,0 +1,19 @@ +TIMESTAMP = 1625095928 +SHA256 (nwg-piotr-nwg-bar-v0.0.1_GH0.tar.gz) = 375f628116ba9c1c2df3fba6dc055e7763fe5004fb720c6c2e437c4080ff7f6a +SIZE (nwg-piotr-nwg-bar-v0.0.1_GH0.tar.gz) = 3151814 +SHA256 (allan-simon-go-singleinstance-d0997106ab37_GH0.tar.gz) = f8cee874873fe9fc1a81e8a7ca83df85c57aa86279c09cb8cba10d5feb7ed295 +SIZE (allan-simon-go-singleinstance-d0997106ab37_GH0.tar.gz) = 2819 +SHA256 (dlasky-gotk3-layershell-5cca0b819261_GH0.tar.gz) = a4548130c9fcc87302568b382fc4952aaaea262e04540480dddfd220f878c4fc +SIZE (dlasky-gotk3-layershell-5cca0b819261_GH0.tar.gz) = 2282 +SHA256 (golang-sync-56d357773e84_GH0.tar.gz) = b30ecf4394f01a492423b41e3815d84711c29d679ee4dd5118fc2c9bcf433b3f +SIZE (golang-sync-56d357773e84_GH0.tar.gz) = 16832 +SHA256 (gotk3-gotk3-v0.6.0_GH0.tar.gz) = 73e33cf291cc7d071e29af15482c4b45794ad614d6dcecac716df0959126a0ce +SIZE (gotk3-gotk3-v0.6.0_GH0.tar.gz) = 272701 +SHA256 (joshuarubin-go-sway-v0.0.4_GH0.tar.gz) = bde4f59a99937f5a4128cdbc8c06107a41f72324a88de6d1d0cd666df0750820 +SIZE (joshuarubin-go-sway-v0.0.4_GH0.tar.gz) = 9158 +SHA256 (joshuarubin-lifecycle-v1.0.0_GH0.tar.gz) = 01ae9623078c568cefbda7c2dd973024382cdbf598f5efa4ac5578bb4bd0dff7 +SIZE (joshuarubin-lifecycle-v1.0.0_GH0.tar.gz) = 7265 +SHA256 (uber-go-atomic-v1.3.2_GH0.tar.gz) = ee2ec763758d8ab2095ee927086a1ed057212fa27660614448d4bbcbdc4ffe61 +SIZE (uber-go-atomic-v1.3.2_GH0.tar.gz) = 8047 +SHA256 (uber-go-multierr-v1.1.0_GH0.tar.gz) = 45405583513302d57d4715fada5ef8c8dbd9c9992956f2d0faa8758d9d885851 +SIZE (uber-go-multierr-v1.1.0_GH0.tar.gz) = 9234 diff --git a/x11/nwg-bar/files/patch-config_bar.json b/x11/nwg-bar/files/patch-config_bar.json new file mode 100644 index 000000000000..6e8e6690f64f --- /dev/null +++ b/x11/nwg-bar/files/patch-config_bar.json @@ -0,0 +1,18 @@ +--- config/bar.json.orig 2021-06-30 23:32:08 UTC ++++ config/bar.json +@@ -11,12 +11,12 @@ + }, + { + "label": "Reboot", +- "exec": "systemctl reboot", ++ "exec": "shutdown -r now", + "icon": "/usr/share/nwg-bar/images/system-reboot.svg" + }, + { + "label": "Shutdown", +- "exec": "systemctl -i poweroff", ++ "exec": "shutdown -p now", + "icon": "/usr/share/nwg-bar/images/system-shutdown.svg" + } + ] +\ No newline at end of file diff --git a/x11/nwg-bar/pkg-descr b/x11/nwg-bar/pkg-descr new file mode 100644 index 000000000000..9b9c0e9e706a --- /dev/null +++ b/x11/nwg-bar/pkg-descr @@ -0,0 +1,10 @@ +nwg-bar is a Golang replacement to the nwgbar command (a part of +nwg-launchers), with some improvements. Aimed at sway, works with +wlroots-based compositors only. + +The nwg-bar command creates a button bar on the basis of a JSON +template placed in the ~/.config/nwg-bar/ folder. By default the +command displays a horizontal bar in the center of the screen. Use +command line arguments to change the placement. + +WWW: https://github.com/nwg-piotr/nwg-bar -- cgit v1.2.3