diff options
author | Aylur <[email protected]> | 2024-09-25 23:22:01 +0000 |
---|---|---|
committer | Aylur <[email protected]> | 2024-09-25 23:22:01 +0000 |
commit | 65654282a98cb0590d498e4ed9c924f97646f1dc (patch) | |
tree | 9150a8c5dca5429fafdd559db6e88f8bccb23d84 /docs/libraries/auth.md | |
parent | fd8c3e81d8f7b235be123ce592f89e72f65a0f05 (diff) |
docs: restructure
Diffstat (limited to 'docs/libraries/auth.md')
-rw-r--r-- | docs/libraries/auth.md | 118 |
1 files changed, 0 insertions, 118 deletions
diff --git a/docs/libraries/auth.md b/docs/libraries/auth.md deleted file mode 100644 index 1f07a17..0000000 --- a/docs/libraries/auth.md +++ /dev/null @@ -1,118 +0,0 @@ -# Auth - -Library and CLI tool for authentication using [pam](https://github.com/linux-pam/linux-pam). - -## Installation - -1. install dependencies - -:::code-group - -```sh [<i class="devicon-archlinux-plain"></i> Arch] -sudo pacman -Syu meson pam gobject-introspection -``` - -```sh [<i class="devicon-fedora-plain"></i> Fedora] -sudo dnf install meson pam-devel gobject-introspection-devel -``` - -```sh [<i class="devicon-ubuntu-plain"></i> Ubuntu] -# Not yet documented -``` - -::: - -::: warning On NixOS you have to add `astal-auth` to `security.pam`. -::: code-group - -```nix [configuration.nix] -{ - security.pam.services.astal-auth = {} -} -``` - -::: - -2. clone repo - -```sh -git clone https://github.com/aylur/astal.git -cd astal/lib/auth -``` - -3. install - -```sh -meson setup build -meson install -C build -``` - -:::tip -Most distros recommend manual installs in `/usr/local`, -which is what `meson` defaults to. If you want to install to `/usr` -instead which most package managers do, set the `prefix` option: - -```sh -meson setup --prefix /usr build -``` - -::: - -## Usage - -You can browse the [Auth reference](https://aylur.github.io/libastal/auth). - -### CLI - -```sh -astal-auth --password my-password -``` - -### Library - -:::code-group - -```js [<i class="devicon-javascript-plain"></i> JavaScript] -import Auth from "gi://AstalAuth" - -Auth.Pam.authenticate("password", (_, task) => { - try { - AstalAuth.Pam.authenticate_finish(task) - print("authentication sucessful") - } catch (error) { - print(error) - } -}) -``` - -```py [<i class="devicon-python-plain"></i> Python] -from gi.repository import AstalAuth as Auth - -def callback(_, task) -> None: - try: - Auth.Pam.authenticate_finish(task) - print("success") - except Exception as e: - print(e) - -Auth.Pam.authenticate("password", callback) -``` - -```lua [<i class="devicon-lua-plain"></i> Lua] -local Auth = require("lgi").require("AstalAuth") - -Auth.Pam.authenticate("password", function(_, task) - local status, err = Auth.Pam.authenticate_finish(task) - if err ~= nil then - print(err) - else - print("success") - end -end) -``` - -```vala [<i class="devicon-vala-plain"></i> Vala] -// Not yet documented -``` - -::: |