From 4f44a3b2bd3d09b0875589422293aeb0651343dd Mon Sep 17 00:00:00 2001 From: Drew DeVault Date: Sun, 13 Jan 2019 21:24:33 -0500 Subject: [PATCH] Add README.md, compile man pages --- README.md | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++++ meson.build | 24 +++++++++++++++++++++ 2 files changed, 84 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..e833e7f --- /dev/null +++ b/README.md @@ -0,0 +1,60 @@ +# swaylock + +swaylock is a screen locking utility for Wayland compositors. It is compatible +with any Wayland compositor which implements the following Wayland protocols: + +- wlr-layer-shell +- wlr-input-inhibitor +- xdg-output +- xdg-shell + +See the man page, `swayidle(1)`, for instructions on using swaylock. + +## Release Signatures + +Releases are signed with [B22DA89A](http://pgp.mit.edu/pks/lookup?op=vindex&search=0x52CB6609B22DA89A) +and published [on GitHub](https://github.com/swaywm/sway/releases). swaylock +releases are managed independently of sway releases. + +## Installation + +### From Packages + +Sway is available in many distributions. Try installing the "swayidle" package +for yours. If it's not available, check out [this wiki +page](https://github.com/swaywm/sway/wiki/Unsupported-packages) for information +on installation for your distributions. + +If you're interested in packaging sway for your distribution, stop by the IRC +channel or shoot an email to sir@cmpwn.com for advice. + +### Compiling from Source + +Install dependencies: + +* meson \* +* [wlroots](https://github.com/swaywm/wlroots) +* wayland +* wayland-protocols \* +* pango +* cairo +* gdk-pixbuf2 \*\* +* pam (optional) +* [scdoc](https://git.sr.ht/~sircmpwn/scdoc) (optional: man pages) \* +* git \* + +_\*Compile-time dep_ + +_\*\*optional: required for background images other than PNG_ + +Run these commands: + + meson build + ninja -C build + sudo ninja -C build install + +On systems without PAM, you need to suid the swaylock binary: + + sudo chmod a+s /usr/local/bin/swaylock + +Swaylock will drop root permissions shortly after startup. diff --git a/meson.build b/meson.build index 71d2f78..b680c1a 100644 --- a/meson.build +++ b/meson.build @@ -175,3 +175,27 @@ else rename: 'swaylock' ) endif + +if scdoc.found() + sh = find_program('sh') + mandir = get_option('mandir') + man_files = [ + 'swaylock.1.scd', + ] + foreach filename : man_files + topic = filename.split('.')[-3].split('/')[-1] + section = filename.split('.')[-2] + output = '@0@.@1@'.format(topic, section) + + custom_target( + output, + input: filename, + output: output, + command: [ + sh, '-c', '@0@ < @INPUT@ > @1@'.format(scdoc.path(), output) + ], + install: true, + install_dir: '@0@/man@1@'.format(mandir, section) + ) + endforeach +endif