Skip to content

feat: add Arch Linux support for dependencies - #75

Merged
Vladush merged 30 commits into
masterfrom
feat/arch-linux-instructions
Oct 23, 2026
Merged

Vladush merged 30 commits into
masterfrom
feat/arch-linux-instructions

Conversation

@Vladush

@Vladush Vladush commented Oct 7, 2026 •

Copy link
Copy Markdown
Owner

Description

Adds Arch Linux dependency installation instructions to README.md and updates scripts/install_deps.sh to auto-detect Arch Linux and install the required dependencies using pacman.

Latest Updates:

  • Native PKGBUILD: Added a native Arch package script (arch/PKGBUILD) that cleanly handles dependencies, static OpenCV compilation, and configuration preservation (backup array).
  • GitHub Actions CI Validation: Added an isolated build-arch-linux job to our CI pipeline. It builds the package in a clean archlinux:base-devel container to guarantee there are no undeclared dependencies.
  • Dependency Fixes: Fixed the missing tpm2-tss package in pacman, correctly preserved libtss2-dev for Debian/Ubuntu environments, and updated scripts/build_opencv.sh to use pacman.

Fixes #73

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update

How Has This Been Tested?

  • Verified correct syntax for Arch Linux pacman dependencies.
  • Validated bash script syntax for OS detection.
  • Tested PKGBUILD generation in a clean Arch container via GitHub Actions.

Checklist

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes

@Vladush

Vladush commented Oct 7, 2026

Copy link
Copy Markdown
Owner Author

@yuragyura I've put together a PR with the Arch Linux build instructions and updated the script to handle pacman automatically as requested. Please take a look!

@yuragyura

Copy link
Copy Markdown

Dependencies list working fine. build_opencv.sh ends with error while tries to use apt-get
~/Загрузки/LinuxCamPAM-20a9c024eecb842d2cf776de7c511a9f55354a39 1m 20s ❯ ./scripts/build_opencv.sh === Building OpenCV 4.12.0 (Static) from Source === Target: /home/ca0/Загрузки/LinuxCamPAM-20a9c024eecb842d2cf776de7c511a9f55354a39/opencv_static Installing Dependencies... sudo: apt-get: команда не найдена

@Vladush

Vladush commented Oct 9, 2026 •

Copy link
Copy Markdown
Owner Author

Hey, @yuragyura!
Sorry for the wait. I just pushed some massive updates to the feat/arch-linux-instructions branch to sort this out and I've overhauled the documentation.

I added a native PKGBUILD so you can build and install it the Arch way.

To test this specific PR, you'll need to modify the PKGBUILD slightly so it pulls this branch instead of master, and then follow the new manual PAM setup instructions:

git clone https://github.com/Vladush/LinuxCamPAM.git
cd LinuxCamPAM/arch

# Edit the PKGBUILD to point to this PR's branch
sed -i 's|source=("git+https://github.com/Vladush/LinuxCamPAM.git")|source=("git+https://github.com/Vladush/LinuxCamPAM.git#branch=feat/arch-linux-instructions")|' PKGBUILD

makepkg -si

After it installs, it will not automatically configure PAM (unlike the Debian installer). You'll need to follow the Arch Linux Post-Installation steps in the README to enable the service and add the pam_faillock rules safely.

Could you give it a quick spin when you have a chance? Let me know if it successfully unlocks your sudo and screen, and I'll get it merged.

Буду очень признателен за фидбек!

@Vladush Vladush assigned Vladush and yuragyura and unassigned Vladush Oct 10, 2026
@Vladush
Vladush merged commit 521b4ec into master Oct 23, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Arch based distro instruction

2 participants