Skip to content

Commit

Permalink
docs(readme): add build from source (#874)
Browse files Browse the repository at this point in the history
  • Loading branch information
musikid committed Jan 17, 2024
1 parent df60fb1 commit d4eb16c
Show file tree
Hide file tree
Showing 3 changed files with 42 additions and 4 deletions.
40 changes: 39 additions & 1 deletion README.md
Expand Up @@ -45,13 +45,15 @@ This will guide you through the installation.
Download the .deb file from the [Releases page](https://github.com/boltgolt/howdy/releases) and install with gdebi.

### Arch Linux

_Maintainer wanted._

Install the `howdy` package from the AUR. For AUR installation instructions, take a look at this [wiki page](https://wiki.archlinux.org/index.php/Arch_User_Repository#Installing_packages).

You will need to do some additional configuration steps. Please read the [ArchWiki entry](https://wiki.archlinux.org/index.php/Howdy) for more information.

### Fedora

_Maintainer: [@luyatshimbalanga](https://github.com/luyatshimbalanga)_

The `howdy` package is available as a [Fedora COPR repository](https://copr.fedorainfracloud.org/coprs/principis/howdy/), install it by simply executing the following commands in a terminal:
Expand All @@ -64,10 +66,45 @@ sudo dnf --refresh install howdy
See the link to the COPR repository for detailed configuration steps.

### openSUSE

_Maintainer: [@dmafanasyev](https://github.com/dmafanasyev)_

Go to the [openSUSE wiki page](https://en.opensuse.org/SDB:Facial_authentication) for detailed installation instructions.

### Building from source

If you want to build Howdy from source, a few dependencies are required.

#### Dependencies

- Python 3.6 or higher
* pip
* setuptools
* wheel
- meson version 0.64 or higher
- ninja
- INIReader (can be pulled from git automatically if not found)
- libevdev

To install them on Debian/Ubuntu for example:

```
sudo apt-get update && sudo apt-get install -y \
python3 python3-pip python3-setuptools python3-wheel \
cmake make build-essential \
libpam0g-dev libinih-dev libevdev-dev \
python3-dev libopencv-dev
```

#### Build

```sh
meson setup build
meson compile -C build
```

You can also install Howdy to your system with `meson install -C build`.

## Setup

After installation, Howdy needs to learn what you look like so it can recognise you later. Run `sudo howdy add` to add a face model.
Expand Down Expand Up @@ -107,7 +144,8 @@ Code contributions are also very welcome. If you want to port Howdy to another d

Any Python errors get logged directly into the console and should indicate what went wrong. If authentication still fails but no errors are printed, you could take a look at the last lines in `/var/log/auth.log` to see if anything has been reported there.

If you encounter an error that hasn't been reported yet, don't be afraid to open a new issue.
Please first check the [wiki on common issues](https://github.com/boltgolt/howdy/wiki/Common-issues) and
if you encounter an error that hasn't been reported yet, don't be afraid to open a new issue.

## A note on security

Expand Down
4 changes: 2 additions & 2 deletions howdy/src/pam/README.md
@@ -1,6 +1,6 @@
# Howdy PAM module

## Prepare
## Requirements

This module depends on `INIReader` and `libevdev`.
They can be installed with these packages:
Expand All @@ -19,7 +19,7 @@ it will be automatically pulled from git at the subproject's pinned version.

``` sh
meson setup build
ninja -C build
ninja -C build # or meson compile -C build
```

## Install
Expand Down
2 changes: 1 addition & 1 deletion meson.build
Expand Up @@ -14,6 +14,6 @@ paths_dict = {
'log_path': logpath,
}

# We need to keep this order beause howdy-gtk defines the gtk script path
# We need to keep this order beause howdy-gtk defines the gtk script path which is used later in howdy
subdir('howdy-gtk')
subdir('howdy')

0 comments on commit d4eb16c

Please sign in to comment.