Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 1 Jul 2021 13:22:42 GMT
From:      Jan Beich <jbeich@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: 123b1571faa6 - main - x11/swayr: add new port
Message-ID:  <202107011322.161DMgLh094704@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by jbeich:

URL: https://cgit.FreeBSD.org/ports/commit/?id=123b1571faa645e3e06e74c27e5bd92ec5b6bda0

commit 123b1571faa645e3e06e74c27e5bd92ec5b6bda0
Author:     Jan Beich <jbeich@FreeBSD.org>
AuthorDate: 2021-07-01 07:23:02 +0000
Commit:     Jan Beich <jbeich@FreeBSD.org>
CommitDate: 2021-07-01 13:21:59 +0000

    x11/swayr: add new port
    
    Swayr consists of a demon, and a client. The demon swayrd records
    window/workspace creations, deletions, and focus changes using sway's
    JSON IPC interface. The client swayr offers subcommands, see swayr
    --help, and sends them to the demon which executes them.
    
    Right now, there are these subcommands:
    * next-window focuses the next window in depth-first iteration order of the
      tree.
    * prev-window focuses the previous window in depth-first iteration order of
      the tree.
    * switch-window displays all windows in the order urgent first, then
      last-recently-used, focused last and focuses the selected.
    * quit-window displays all windows and quits the selected one.
    * switch-to-urgent-or-lru-window switches to the next window with urgency
      hint (if any) or to the last recently used window.
    * switch-workspace displays all workspaces in LRU order and switches to the
      selected one.
    * switch-workspace-or-window displays all workspaces and their windows and
       switches to the selected workspace or window.
    * quit-workspace-or-window displays all workspaces and their windows and
      allows to quit either the selected workspace (all its windows) or the
      selected window.
    * execute-swaymsg-command displays most swaymsg which don't require
      additional input and executes the selected one. That's handy especially for
      less often used commands not bound to a key.
    * execute-swayr-command displays all commands above and executes the selected
      one. (This is useful for accessing swayr commands which are not bound to a
      key.)
    
    WWW: https://sr.ht/~tsdh/swayr/
---
 x11/Makefile        |  1 +
 x11/swayr/Makefile  | 66 +++++++++++++++++++++++++++++++++++++
 x11/swayr/distinfo  | 95 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 x11/swayr/pkg-descr | 30 +++++++++++++++++
 4 files changed, 192 insertions(+)

diff --git a/x11/Makefile b/x11/Makefile
index 8e57835f604a..28897f840117 100644
--- a/x11/Makefile
+++ b/x11/Makefile
@@ -339,6 +339,7 @@
     SUBDIR += swayidle
     SUBDIR += swaylock
     SUBDIR += swaylock-effects
+    SUBDIR += swayr
     SUBDIR += sxhkd
     SUBDIR += sxpc
     SUBDIR += tabbed
diff --git a/x11/swayr/Makefile b/x11/swayr/Makefile
new file mode 100644
index 000000000000..b7d9b37a4743
--- /dev/null
+++ b/x11/swayr/Makefile
@@ -0,0 +1,66 @@
+PORTNAME=	swayr
+DISTVERSIONPREFIX=	v
+DISTVERSION=	0.4.4
+CATEGORIES=	x11
+MASTER_SITES=	https://git.sr.ht/~tsdh/${PORTNAME}/archive/${DISTVERSIONFULL}${EXTRACT_SUFX}?dummy=/
+# XXX Teach USES=cargo to not override default DISTFILES
+DISTFILES=	${DISTNAME}${EXTRACT_SUFX}
+
+MAINTAINER=	jbeich@FreeBSD.org
+COMMENT=	Urgent-first/LRU window switcher for sway
+
+LICENSE=	GPLv3+
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+USES=		cargo
+PLIST_FILES=	bin/${PORTNAME} \
+		bin/${PORTNAME}d
+
+CARGO_CRATES=	atty-0.2.14 \
+		autocfg-1.0.1 \
+		bitflags-1.2.1 \
+		cfg-if-1.0.0 \
+		clap-3.0.0-beta.2 \
+		clap_derive-3.0.0-beta.2 \
+		directories-3.0.2 \
+		dirs-sys-0.3.6 \
+		getrandom-0.2.3 \
+		hashbrown-0.11.2 \
+		heck-0.3.3 \
+		hermit-abi-0.1.19 \
+		indexmap-1.7.0 \
+		itoa-0.4.7 \
+		lazy_static-1.4.0 \
+		libc-0.2.97 \
+		os_str_bytes-2.4.0 \
+		proc-macro-error-1.0.4 \
+		proc-macro-error-attr-1.0.4 \
+		proc-macro2-1.0.27 \
+		quote-1.0.9 \
+		redox_syscall-0.2.9 \
+		redox_users-0.4.0 \
+		ryu-1.0.5 \
+		serde-1.0.126 \
+		serde_derive-1.0.126 \
+		serde_json-1.0.64 \
+		strsim-0.10.0 \
+		swayipc-3.0.0-alpha.3 \
+		swayipc-types-1.0.0-alpha.3 \
+		syn-1.0.73 \
+		termcolor-1.1.2 \
+		textwrap-0.12.1 \
+		thiserror-1.0.25 \
+		thiserror-impl-1.0.25 \
+		toml-0.5.8 \
+		unicode-segmentation-1.7.1 \
+		unicode-width-0.1.8 \
+		unicode-xid-0.2.2 \
+		vec_map-0.8.2 \
+		version_check-0.9.3 \
+		wasi-0.10.2+wasi-snapshot-preview1 \
+		winapi-0.3.9 \
+		winapi-i686-pc-windows-gnu-0.4.0 \
+		winapi-util-0.1.5 \
+		winapi-x86_64-pc-windows-gnu-0.4.0
+
+.include <bsd.port.mk>
diff --git a/x11/swayr/distinfo b/x11/swayr/distinfo
new file mode 100644
index 000000000000..fb8a72c2683c
--- /dev/null
+++ b/x11/swayr/distinfo
@@ -0,0 +1,95 @@
+TIMESTAMP = 1624869614
+SHA256 (swayr-v0.4.4.tar.gz) = 48ed36b6404763a25bed4a2fee654b463677b54f307632ecb923504549e2c709
+SIZE (swayr-v0.4.4.tar.gz) = 121927
+SHA256 (rust/crates/atty-0.2.14.crate) = d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8
+SIZE (rust/crates/atty-0.2.14.crate) = 5470
+SHA256 (rust/crates/autocfg-1.0.1.crate) = cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a
+SIZE (rust/crates/autocfg-1.0.1.crate) = 12908
+SHA256 (rust/crates/bitflags-1.2.1.crate) = cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693
+SIZE (rust/crates/bitflags-1.2.1.crate) = 16745
+SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
+SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
+SHA256 (rust/crates/clap-3.0.0-beta.2.crate) = 4bd1061998a501ee7d4b6d449020df3266ca3124b941ec56cf2005c3779ca142
+SIZE (rust/crates/clap-3.0.0-beta.2.crate) = 141105
+SHA256 (rust/crates/clap_derive-3.0.0-beta.2.crate) = 370f715b81112975b1b69db93e0b56ea4cd4e5002ac43b2da8474106a54096a1
+SIZE (rust/crates/clap_derive-3.0.0-beta.2.crate) = 23425
+SHA256 (rust/crates/directories-3.0.2.crate) = e69600ff1703123957937708eb27f7a564e48885c537782722ed0ba3189ce1d7
+SIZE (rust/crates/directories-3.0.2.crate) = 15593
+SHA256 (rust/crates/dirs-sys-0.3.6.crate) = 03d86534ed367a67548dc68113a0f5db55432fdfbb6e6f9d77704397d95d5780
+SIZE (rust/crates/dirs-sys-0.3.6.crate) = 10626
+SHA256 (rust/crates/getrandom-0.2.3.crate) = 7fcd999463524c52659517fe2cea98493cfe485d10565e7b0fb07dbba7ad2753
+SIZE (rust/crates/getrandom-0.2.3.crate) = 26261
+SHA256 (rust/crates/hashbrown-0.11.2.crate) = ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e
+SIZE (rust/crates/hashbrown-0.11.2.crate) = 85713
+SHA256 (rust/crates/heck-0.3.3.crate) = 6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c
+SIZE (rust/crates/heck-0.3.3.crate) = 10260
+SHA256 (rust/crates/hermit-abi-0.1.19.crate) = 62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33
+SIZE (rust/crates/hermit-abi-0.1.19.crate) = 9979
+SHA256 (rust/crates/indexmap-1.7.0.crate) = bc633605454125dec4b66843673f01c7df2b89479b32e0ed634e43a91cff62a5
+SIZE (rust/crates/indexmap-1.7.0.crate) = 50363
+SHA256 (rust/crates/itoa-0.4.7.crate) = dd25036021b0de88a0aff6b850051563c6516d0bf53f8638938edbb9de732736
+SIZE (rust/crates/itoa-0.4.7.crate) = 12099
+SHA256 (rust/crates/lazy_static-1.4.0.crate) = e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646
+SIZE (rust/crates/lazy_static-1.4.0.crate) = 10443
+SHA256 (rust/crates/libc-0.2.97.crate) = 12b8adadd720df158f4d70dfe7ccc6adb0472d7c55ca83445f6a5ab3e36f8fb6
+SIZE (rust/crates/libc-0.2.97.crate) = 517712
+SHA256 (rust/crates/os_str_bytes-2.4.0.crate) = afb2e1c3ee07430c2cf76151675e583e0f19985fa6efae47d6848a3e2c824f85
+SIZE (rust/crates/os_str_bytes-2.4.0.crate) = 14657
+SHA256 (rust/crates/proc-macro-error-1.0.4.crate) = da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c
+SIZE (rust/crates/proc-macro-error-1.0.4.crate) = 25293
+SHA256 (rust/crates/proc-macro-error-attr-1.0.4.crate) = a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869
+SIZE (rust/crates/proc-macro-error-attr-1.0.4.crate) = 7971
+SHA256 (rust/crates/proc-macro2-1.0.27.crate) = f0d8caf72986c1a598726adc988bb5984792ef84f5ee5aa50209145ee8077038
+SIZE (rust/crates/proc-macro2-1.0.27.crate) = 38625
+SHA256 (rust/crates/quote-1.0.9.crate) = c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7
+SIZE (rust/crates/quote-1.0.9.crate) = 25042
+SHA256 (rust/crates/redox_syscall-0.2.9.crate) = 5ab49abadf3f9e1c4bc499e8845e152ad87d2ad2d30371841171169e9d75feee
+SIZE (rust/crates/redox_syscall-0.2.9.crate) = 23533
+SHA256 (rust/crates/redox_users-0.4.0.crate) = 528532f3d801c87aec9def2add9ca802fe569e44a544afe633765267840abe64
+SIZE (rust/crates/redox_users-0.4.0.crate) = 13023
+SHA256 (rust/crates/ryu-1.0.5.crate) = 71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e
+SIZE (rust/crates/ryu-1.0.5.crate) = 49570
+SHA256 (rust/crates/serde-1.0.126.crate) = ec7505abeacaec74ae4778d9d9328fe5a5d04253220a85c4ee022239fc996d03
+SIZE (rust/crates/serde-1.0.126.crate) = 75138
+SHA256 (rust/crates/serde_derive-1.0.126.crate) = 963a7dbc9895aeac7ac90e74f34a5d5261828f79df35cbed41e10189d3804d43
+SIZE (rust/crates/serde_derive-1.0.126.crate) = 54189
+SHA256 (rust/crates/serde_json-1.0.64.crate) = 799e97dc9fdae36a5c8b8f2cae9ce2ee9fdce2058c57a93e6099d919fd982f79
+SIZE (rust/crates/serde_json-1.0.64.crate) = 115138
+SHA256 (rust/crates/strsim-0.10.0.crate) = 73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623
+SIZE (rust/crates/strsim-0.10.0.crate) = 11355
+SHA256 (rust/crates/swayipc-3.0.0-alpha.3.crate) = 9cd9a688c43e93f1e1d2b2366a5403815b8017dd5f9cdaf51ae8ae9ae8fba5d0
+SIZE (rust/crates/swayipc-3.0.0-alpha.3.crate) = 3705
+SHA256 (rust/crates/swayipc-types-1.0.0-alpha.3.crate) = e125745767953fbbea5ba38caede26c89e4aeaf741afff7eb655967611b695d6
+SIZE (rust/crates/swayipc-types-1.0.0-alpha.3.crate) = 5648
+SHA256 (rust/crates/syn-1.0.73.crate) = f71489ff30030d2ae598524f61326b902466f72a0fb1a8564c001cc63425bcc7
+SIZE (rust/crates/syn-1.0.73.crate) = 232706
+SHA256 (rust/crates/termcolor-1.1.2.crate) = 2dfed899f0eb03f32ee8c6a0aabdb8a7949659e3466561fc0adf54e26d88c5f4
+SIZE (rust/crates/termcolor-1.1.2.crate) = 17287
+SHA256 (rust/crates/textwrap-0.12.1.crate) = 203008d98caf094106cfaba70acfed15e18ed3ddb7d94e49baec153a2b462789
+SIZE (rust/crates/textwrap-0.12.1.crate) = 23964
+SHA256 (rust/crates/thiserror-1.0.25.crate) = fa6f76457f59514c7eeb4e59d891395fab0b2fd1d40723ae737d64153392e9c6
+SIZE (rust/crates/thiserror-1.0.25.crate) = 16690
+SHA256 (rust/crates/thiserror-impl-1.0.25.crate) = 8a36768c0fbf1bb15eca10defa29526bda730a2376c2ab4393ccfa16fb1a318d
+SIZE (rust/crates/thiserror-impl-1.0.25.crate) = 13364
+SHA256 (rust/crates/toml-0.5.8.crate) = a31142970826733df8241ef35dc040ef98c679ab14d7c3e54d827099b3acecaa
+SIZE (rust/crates/toml-0.5.8.crate) = 54219
+SHA256 (rust/crates/unicode-segmentation-1.7.1.crate) = bb0d2e7be6ae3a5fa87eed5fb451aff96f2573d2694942e40543ae0bbe19c796
+SIZE (rust/crates/unicode-segmentation-1.7.1.crate) = 93066
+SHA256 (rust/crates/unicode-width-0.1.8.crate) = 9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3
+SIZE (rust/crates/unicode-width-0.1.8.crate) = 16732
+SHA256 (rust/crates/unicode-xid-0.2.2.crate) = 8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3
+SIZE (rust/crates/unicode-xid-0.2.2.crate) = 14955
+SHA256 (rust/crates/vec_map-0.8.2.crate) = f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191
+SIZE (rust/crates/vec_map-0.8.2.crate) = 14466
+SHA256 (rust/crates/version_check-0.9.3.crate) = 5fecdca9a5291cc2b8dcf7dc02453fee791a280f3743cb0905f8822ae463b3fe
+SIZE (rust/crates/version_check-0.9.3.crate) = 12547
+SHA256 (rust/crates/wasi-0.10.2+wasi-snapshot-preview1.crate) = fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6
+SIZE (rust/crates/wasi-0.10.2+wasi-snapshot-preview1.crate) = 27505
+SHA256 (rust/crates/winapi-0.3.9.crate) = 5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419
+SIZE (rust/crates/winapi-0.3.9.crate) = 1200382
+SHA256 (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6
+SIZE (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = 2918815
+SHA256 (rust/crates/winapi-util-0.1.5.crate) = 70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178
+SIZE (rust/crates/winapi-util-0.1.5.crate) = 10164
+SHA256 (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f
+SIZE (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 2947998
diff --git a/x11/swayr/pkg-descr b/x11/swayr/pkg-descr
new file mode 100644
index 000000000000..0647140a559e
--- /dev/null
+++ b/x11/swayr/pkg-descr
@@ -0,0 +1,30 @@
+Swayr consists of a demon, and a client. The demon swayrd records
+window/workspace creations, deletions, and focus changes using sway's
+JSON IPC interface. The client swayr offers subcommands, see swayr
+--help, and sends them to the demon which executes them.
+
+Right now, there are these subcommands:
+* next-window focuses the next window in depth-first iteration order of the
+  tree.
+* prev-window focuses the previous window in depth-first iteration order of
+  the tree.
+* switch-window displays all windows in the order urgent first, then
+  last-recently-used, focused last and focuses the selected.
+* quit-window displays all windows and quits the selected one.
+* switch-to-urgent-or-lru-window switches to the next window with urgency
+  hint (if any) or to the last recently used window.
+* switch-workspace displays all workspaces in LRU order and switches to the
+  selected one.
+* switch-workspace-or-window displays all workspaces and their windows and
+   switches to the selected workspace or window.
+* quit-workspace-or-window displays all workspaces and their windows and
+  allows to quit either the selected workspace (all its windows) or the
+  selected window.
+* execute-swaymsg-command displays most swaymsg which don't require
+  additional input and executes the selected one. That's handy especially for
+  less often used commands not bound to a key.
+* execute-swayr-command displays all commands above and executes the selected
+  one. (This is useful for accessing swayr commands which are not bound to a
+  key.)
+
+WWW: https://sr.ht/~tsdh/swayr/



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202107011322.161DMgLh094704>