Git Product home page Git Product logo

alock's Introduction

ALOCK

Alock is a simple screen lock application, which locks the X server until the correct password is provided. If the authentication was successful, the X server is unlocked and the user can continue to work. When 'alock' is started it just waits for the first keypress. This first keypress is to indicate that the user now wants to type in the password. Such a behavior might seem to be annoying at the first glance, however this approach is chosen due to security reasons.

Note, that this application does not provide any fancy animations like xlock or xscreensaver and probably never will. It is just for locking current X session (with few flavors - see usage section below). If this application is too much for you, you may give a try i3lock.

Installation

$ autoreconf --install
$ mkdir build && cd build
$ ../configure --enable-pam --enable-hash --enable-xrender --enable-imlib2 \
    --with-dunst --with-xbacklight
$ make && make install

Integration with external applications (experimental features):

  • --with-dunst - This option enables the integration with the dunst (lightweight notification-daemon). When the screen is locked, the notifications are paused in order to prevent the leak of confidential data.
  • --with-xbacklight - Enable display backlight dimming via the xbacklight. When the screen is locked, the backlight brightness is set to 0. The original (previous) value is restored whenever the screen is going to be unlocked (passphrase input). This feature has to be explicitly enabled via the ALock.backlight: true X Resource.

In order to specify the build-in default PAM service, use PAM_DEFAULT_SERVICE environment variable (or pass it as a configuration argument). If this variable is empty or not specified, the system-auth service will be used.

Usage

The locking behavior can be customized with four 'alock' modules: authentication (-auth), background (-bg), cursor (-cursor) and input module (-input). In order to obtain the list of all available modules (compiled in), issue the command as follows:

$ alock --modules

When 'alock' is compiled with all modules, then running it without any arguments is equivalent to:

$ alock -auth pam -bg blank:color=black -cursor none \
        -input frame:input=green,check=yellow,error=red

It is also possible to modify visual behavior of background, cursor and input modules via the X Resources. All available resource names can be found in the 'alock' manual file. The exemplary configuration might be as follows:

ALock*background*option:  center
ALock*background*shade:   50
ALock*cursor*name:        plus
ALock*input.frame*input:  white
ALock*input.frame*check:  blue
ALock*backlight:          true

Available modules

List of authentication modules:

  • none - no authentication at all (not recommended)
  • pam - authenticate using the 'pam-login' module
  • passwd - authenticate using system password database
  • hash - authenticate using arbitrary hash comparison

List of background modules:

  • none - transparent background
  • blank - fill the background with color
  • shade - dim content of the screen
  • image - use image as a background

List of cursor modules:

  • none - no change to the current cursor
  • blank - hide cursor pointer
  • glyph - use compiled in glyph
  • xcursor - use xcursor file
  • image - use image

List of input modules:

  • none - no input feedback for user
  • frame - display frame on the current display

alock's People

Contributors

arkq avatar mgumz avatar nabbi avatar pclouds avatar spacefrogg avatar vaygr avatar viroulep avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.