2010-07-16 11:47:42 -04:00
i3lock - improved screen locker
2016-02-08 16:12:27 -05:00
===============================
2016-02-08 16:17:48 -05:00
2016-02-08 16:22:33 -05:00
_This is just a re-patched version of i3lock with the commits from [i3lock-color ](https://github.com/eBrnd/i3lock-color ); all the credit for the color functionality goes to [eBrnd ](https://github.com/eBrnd/ ) !_
2016-02-08 16:17:48 -05:00
2017-05-30 22:12:45 -04:00
![i3lock-color in action. Why are you reading this? ](https://github.com/chrjguill/i3lock-color/raw/master/screenshot.png "Screenshot sample" )
2016-02-08 16:12:27 -05:00
i3lock is a simple screen locker like slock. After starting it, you will
see a white screen (you can configure the color/an image). You can return
to your screen by entering your password.
2009-03-11 17:17:00 -04:00
2016-02-08 16:12:27 -05:00
Many little improvements have been made to i3lock over time:
2009-03-11 17:17:00 -04:00
2016-02-08 16:12:27 -05:00
- i3lock forks, so you can combine it with an alias to suspend to RAM
(run "i3lock & & echo mem > /sys/power/state" to get a locked screen
after waking up your computer from suspend to RAM)
2009-03-11 17:17:00 -04:00
2016-02-08 16:12:27 -05:00
- You can specify either a background color or a PNG image which will be
displayed while your screen is locked.
2009-03-11 17:17:00 -04:00
2016-02-08 16:12:27 -05:00
- You can also specify additional color options with the following command-line options:
- `--insidevercolor=rrggbbaa` -- Inside of the circle while the password is being verified
- `--insidewrongcolor=rrggbbaa` -- Inside of the circle when a wrong password was entered
- `--insidecolor=rrggbbaa` -- Inside of the circle while typing/idle
2016-02-08 18:30:50 -05:00
- `--ringvercolor=rrggbbaa` -- Outer ring while the password is being verified
2016-02-08 16:12:27 -05:00
- `--ringwrongcolor=rrggbbaa` -- Outer ring when a wrong password was entered
- `--ringcolor=rrggbbaa` -- Outer ring while typing/idle
2016-02-09 09:19:02 -05:00
- `--linecolor=rrggbbaa` -- Line separating outer ring from inside of the circle
- `--separatorcolor=rrggbbaa` -- Lines delimiting the highlight segments
2016-02-08 16:12:27 -05:00
- `--textcolor=rrggbbaa` -- Text ("verifying", "wrong!")
- `--keyhlcolor=rrggbbaa` -- Keypress highlight segments
- `--bshlcolor=rrggbbaa` -- Backspace highlight segments
2016-02-09 09:19:02 -05:00
- `--line-uses-ring` , `-r` -- the line between the inside and outer ring uses the ring color for its color
- `--line-uses-inside` , `-s` -- the line between the inside and outer ring uses the inside color for its color
2017-05-30 16:46:43 -04:00
- The following additional options have been added:
2016-02-17 07:51:04 -05:00
- `-S, --screen` -- specifies which display to draw the unlock indicator on
2016-10-14 21:18:30 -04:00
- `-k, --clock` -- enables the clock display.
2017-05-30 16:46:43 -04:00
- `--indicator` -- forces the indicator to always show, even if there's no activity.
2017-06-28 21:02:24 -04:00
- `--composite` -- enables checking for compositors and trying to grab the compositor window, since that causes issues with some compositors.
2017-05-30 19:12:44 -04:00
- **NOTE**: This can potentially allow sensitive information to display over the screen locker, so take care when you use this option.
2017-05-30 16:46:43 -04:00
- `-B=sigma, --blur` -- enables Gaussian blur. Sigma is the blur radius.
- Note: You can still composite images over the blur (but still under the indicator) with -i.
- Eventually there might be an `imagepos` arg, similar to `time` and `datepos` .
2017-07-08 15:44:29 -04:00
- `--indpos="x+(w/2):y+(h/2)"` -- position of the unlock indicator. Expressions using the variables x (current screen's x value), y (current screen's y value), w (screen width), h (screen height), and r (indicator radius) can be used.
2016-10-14 21:18:30 -04:00
- `--timestr="%H:%M:%S"` -- allows custom overriding of the time format string. Accepts `strftime` formatting. Default is `"%H:%M:%S"` .
2017-07-08 15:44:29 -04:00
- `--timepos="ix:iy-20"` -- position of the time. All the variables in `indpos` can be used here, as well as the additional values ix (indicator x position), iy (indicator y position), cw (clock width), and ch (clock height).
2017-05-19 11:28:09 -04:00
- `--timecolor=rrggbbaa` -- color of the time string
2017-05-19 10:19:52 -04:00
- `--timefont="sans-serif"` -- font used for the time display
- `--timesize=32` -- font size for the time display
2017-05-19 11:28:09 -04:00
- `--datestr="%A, %m %Y"` -- allows custom overriding of the date format string. Accepts `strftime` formatting. Default is `"%A, %m %Y"` .
2017-07-08 15:44:29 -04:00
- `--datepos="ix:iy-20"` -- position of the date. All the variables in `indpos` and `timepos` can be used here, as well as the additional values tx (time x) and ty (time y).
2017-05-19 11:28:09 -04:00
- `--datecolor=rrggbbaa` -- color of the date string
- `--datefont="sans-serif"` -- font used for the date display
2017-05-19 10:19:52 -04:00
- `--datesize=14` -- font size for the date display
2017-05-31 10:26:01 -04:00
- `--veriftext="verifying…"` -- text to be shown while verifying
- `--wrongtext="wrong!"` -- text to be shown upon an incorrect password being entered
2017-05-30 21:47:18 -04:00
- `--textsize=28` -- font size for the status text
- `--modsize=14` -- font size for the modifier keys listing
- `--radius=90` -- the radius of the circle indicator
2017-10-06 10:35:25 -04:00
- `--ring-width=7` -- the width of the indicator ring
2009-03-11 17:17:00 -04:00
2016-02-08 16:12:27 -05:00
- You can specify whether i3lock should bell upon a wrong password.
2009-03-11 17:17:00 -04:00
2016-02-08 16:12:27 -05:00
- i3lock uses PAM and therefore is compatible with LDAP etc.
2017-05-30 16:46:43 -04:00
On OpenBSD i3lock uses the bsd\_auth(3) framework.
2016-02-08 16:12:27 -05:00
2017-08-15 10:30:16 -04:00
## Building
Before you build - check and see if there's a packaged version available for your distro (there usually is, either in a community repo/PPA).
If there's no packaged version available - think carefully, since you're using a forked screen locker at your own risk.
If you don't understand what makefiles are and how they work, start reading [here ](http://www.tldp.org/HOWTO/Software-Building-HOWTO-3.html ). If you're building from source - make sure you're keeping up to date.
### Required Packages
2016-02-08 16:12:27 -05:00
- pkg-config
- libxcb
- libxcb-util
- libpam-dev
- libcairo-dev
2017-03-26 09:01:23 -04:00
- libxcb-composite0
2017-03-29 09:20:34 -04:00
- libxcb-composite0-dev
2016-02-08 16:12:27 -05:00
- libxcb-xinerama
- libev
- libx11-dev
- libx11-xcb-dev
- libxkbcommon >= 0.5.0
- libxkbcommon-x11 >= 0.5.0
2017-08-15 10:30:16 -04:00
(On centos/RHEL/etc, the packages tend to look like `cairo-devel` instead of `libcairo-dev` . Use `yum provides \*/<header.h>` to figure out what packages you need.)
2016-06-19 18:22:09 -04:00
##### Ubuntu
2017-03-29 09:20:34 -04:00
sudo apt-get install pkg-config libxcb1 libpam-dev libcairo-dev libxcb-composite0 libxcb-composite0-dev libxcb-xinerama0-dev libev-dev libx11-dev libx11-xcb-dev libxkbcommon0 libxkbcommon-x11-0 libxcb-dpms0-dev libxcb-image0-dev libxcb-util0-dev libxcb-xkb-dev libxkbcommon-x11-dev libxkbcommon-dev
2016-11-05 14:53:13 -04:00
##### Aur Package
2017-10-08 04:26:25 -04:00
Stable:
https://aur.archlinux.org/packages/i3lock-color/
Git:
2016-11-05 14:53:13 -04:00
https://aur.archlinux.org/packages/i3lock-color-git
2016-06-19 18:22:09 -04:00
2016-02-08 16:12:27 -05:00
Running i3lock
2009-03-11 17:17:00 -04:00
-------------
2012-10-26 14:42:26 -04:00
Simply invoke the 'i3lock' command. To get out of it, enter your password and
2016-02-08 16:12:27 -05:00
press enter.
2017-05-30 22:11:26 -04:00
A [sample script ](https://github.com/chrjguill/i3lock-color/blob/master/lock.sh ) is included in this repository. [Here ](https://streamable.com/fpl46 ) is a short clip of that script in action!
2017-04-15 08:41:32 -04:00
On OpenBSD the `i3lock` binary needs to be setgid `auth` to call the
authentication helpers, e.g. `/usr/libexec/auth/login_passwd` .
2016-02-08 16:12:27 -05:00
Upstream
--------
2017-04-23 12:44:27 -04:00
Please submit pull requests for i3lock things to https://github.com/i3/i3lock and pull requests for color things to me at https://github.com/chrjguill/i3lock-color.