glanced 0.3.2__tar.gz → 0.3.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {glanced-0.3.2/src/glanced.egg-info → glanced-0.3.3}/PKG-INFO +8 -2
- {glanced-0.3.2 → glanced-0.3.3}/README.md +7 -1
- {glanced-0.3.2 → glanced-0.3.3}/pyproject.toml +8 -1
- glanced-0.3.3/src/glanced/_data/lock-faceid/FaceUnlockIndicator.qml +630 -0
- glanced-0.3.3/src/glanced/_data/lock-faceid/LockView.qml +230 -0
- glanced-0.3.3/src/glanced/_data/lock-faceid/README.md +167 -0
- glanced-0.3.3/src/glanced/_data/lock-faceid/Service.qml +780 -0
- glanced-0.3.3/src/glanced/_data/lock-faceid/apply.sh +20 -0
- glanced-0.3.3/src/glanced/_data/lock-faceid/lockview.diff +27 -0
- glanced-0.3.3/src/glanced/_data/lock-faceid/revert.sh +9 -0
- glanced-0.3.3/src/glanced/_data/lock-faceid/service.diff +315 -0
- glanced-0.3.3/src/glanced/_data/lock-faceid/unlock-spin.png +0 -0
- glanced-0.3.3/src/glanced/_data/pam/Makefile +21 -0
- glanced-0.3.3/src/glanced/_data/pam/pam_glance.c +148 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/cli.py +50 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/locksetup.py +15 -2
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/pamsetup.py +31 -4
- {glanced-0.3.2 → glanced-0.3.3/src/glanced.egg-info}/PKG-INFO +8 -2
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced.egg-info/SOURCES.txt +12 -0
- glanced-0.3.3/tests/test_packaged_data.py +80 -0
- {glanced-0.3.2 → glanced-0.3.3}/LICENSE +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/NOTICE +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/setup.cfg +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/__init__.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/align.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/attention.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/camera.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/daemon.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/embed.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/enroll.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/gui/__init__.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/gui/enroll_window.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/gui/passphrase.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/ipc.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/landmarker.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/liveness/__init__.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/liveness/analyzer.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/liveness/bezel.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/liveness/cues.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/liveness/features.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/liveness/frame.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/liveness/geometry.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/liveness/glare.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/liveness/planar.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/liveness/scoring.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/livetest.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/models.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/paths.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/pipeline.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/poses.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/preview.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/scan.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/servicesetup.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced/store.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced.egg-info/dependency_links.txt +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced.egg-info/entry_points.txt +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced.egg-info/requires.txt +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/src/glanced.egg-info/top_level.txt +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/tests/test_attention.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/tests/test_daemon.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/tests/test_enroll.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/tests/test_enroll_passphrase.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/tests/test_enroll_window.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/tests/test_gui_available.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/tests/test_liveness.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/tests/test_locksetup.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/tests/test_pamsetup.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/tests/test_passphrase_dialog.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/tests/test_paths.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/tests/test_poses.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/tests/test_preview.py +0 -0
- {glanced-0.3.2 → glanced-0.3.3}/tests/test_servicesetup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: glanced
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.3
|
|
4
4
|
Summary: Face unlock for Linux with real liveness detection
|
|
5
5
|
License: MIT
|
|
6
6
|
Requires-Python: >=3.11
|
|
@@ -89,10 +89,16 @@ From PyPI. `pipx` keeps the daemon in its own environment and puts
|
|
|
89
89
|
|
|
90
90
|
```bash
|
|
91
91
|
pipx install 'glanced[runtime,gui]'
|
|
92
|
-
glancectl
|
|
92
|
+
glancectl setup # models, service, PAM, lock indicator
|
|
93
93
|
omarchy plugin add https://github.com/ayandexyz/omarchy-glance.git --enable
|
|
94
94
|
```
|
|
95
95
|
|
|
96
|
+
Then click the bar icon and **Enroll**, and `omarchy-restart-shell` to load the
|
|
97
|
+
indicator. `setup` asks for your password once and does what `install-service`,
|
|
98
|
+
`setup-pam` and `setup-lock` do separately; run those instead if you want to
|
|
99
|
+
watch each one. Enrolling is not part of it: it needs your face in front of the
|
|
100
|
+
camera and a passphrase you choose.
|
|
101
|
+
|
|
96
102
|
The `gui` extra is PySide6, for the enrollment window: a camera preview that
|
|
97
103
|
guides the sweep. Leave it out and nothing breaks -- `glancectl status`
|
|
98
104
|
reports the window as unavailable and the plugin's **Enroll** button runs the
|
|
@@ -68,10 +68,16 @@ From PyPI. `pipx` keeps the daemon in its own environment and puts
|
|
|
68
68
|
|
|
69
69
|
```bash
|
|
70
70
|
pipx install 'glanced[runtime,gui]'
|
|
71
|
-
glancectl
|
|
71
|
+
glancectl setup # models, service, PAM, lock indicator
|
|
72
72
|
omarchy plugin add https://github.com/ayandexyz/omarchy-glance.git --enable
|
|
73
73
|
```
|
|
74
74
|
|
|
75
|
+
Then click the bar icon and **Enroll**, and `omarchy-restart-shell` to load the
|
|
76
|
+
indicator. `setup` asks for your password once and does what `install-service`,
|
|
77
|
+
`setup-pam` and `setup-lock` do separately; run those instead if you want to
|
|
78
|
+
watch each one. Enrolling is not part of it: it needs your face in front of the
|
|
79
|
+
camera and a passphrase you choose.
|
|
80
|
+
|
|
75
81
|
The `gui` extra is PySide6, for the enrollment window: a camera preview that
|
|
76
82
|
guides the sweep. Leave it out and nothing breaks -- `glancectl status`
|
|
77
83
|
reports the window as unavailable and the plugin's **Enroll** button runs the
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "glanced"
|
|
7
|
-
version = "0.3.
|
|
7
|
+
version = "0.3.3"
|
|
8
8
|
description = "Face unlock for Linux with real liveness detection"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.11"
|
|
@@ -33,5 +33,12 @@ glancectl = "glanced.cli:main"
|
|
|
33
33
|
[tool.setuptools.packages.find]
|
|
34
34
|
where = ["src"]
|
|
35
35
|
|
|
36
|
+
# The PAM module's source and the lock-screen patch. They are data, not code,
|
|
37
|
+
# but `setup-pam` and `setup-lock` cannot work without them, and a wheel that
|
|
38
|
+
# leaves them out is a face unlock that stops at the lock screen. Kept in step
|
|
39
|
+
# with the canonical top-level copies by tests/test_packaged_data.py.
|
|
40
|
+
[tool.setuptools.package-data]
|
|
41
|
+
glanced = ["_data/pam/*", "_data/lock-faceid/*"]
|
|
42
|
+
|
|
36
43
|
[tool.pytest.ini_options]
|
|
37
44
|
testpaths = ["tests"]
|