Skip to content

New Script: LAN-Orangutan - #2039

Closed
corgan2222 wants to merge 4 commits into
community-scripts:mainfrom
corgan2222:add-lan-orangutan
Closed

New Script: LAN-Orangutan#2039
corgan2222 wants to merge 4 commits into
community-scripts:mainfrom
corgan2222:add-lan-orangutan

Conversation

@corgan2222

Copy link
Copy Markdown

Scripts which are clearly AI generated and not further revised by the Author of this PR (in terms of Coding Standards and Script Layout) may be closed without review.

✍️ Description

Adds a new script set for LAN Orangutan, a lightweight self-hosted network scanner for homelabs: nmap-based device discovery with persistent device labeling, grouping and notes, multi-network support, Tailscale peer integration, a web dashboard (port 291) and a full CLI with JSON/CSV export.

The app is a single static Go binary (v3.x). The install script deploys the prebuilt release binary via fetch_and_deploy_gh_release (prebuild mode), installs nmap as the only dependency, seeds /etc/lan-orangutan/config.ini with upstream defaults and runs the app as a systemd service. update_script is gated by check_for_gh_release and recovers cleanly from interrupted updates (a missing binary resets the version stamp so the next run re-deploys).

🔗 Related PR / Issue

Link: #

✅ Prerequisites (X in brackets)

  • Self-review completed – Code follows project standards.
  • Tested thoroughly – Changes work as expected.
  • No breaking changes – Existing functionality remains intact.
  • No security risks – No hardcoded secrets, unnecessary privilege escalations, or permission issues.

🏗️ arm64 Support (X in brackets)

  • arm64 supported - Tested and supported on arm64.
  • arm64 not tested - Assumed to work on arm64, but testing has not been done.
  • arm64 not supported - Confirmed upstream dependencies or binaries do not support arm64.

🛠️ Type of Change (X in brackets)

  • 🐞 Bug fix – Resolves an issue without breaking functionality.
  • New feature – Adds new, non-breaking functionality.
  • 💥 Breaking change – Alters existing functionality in a way that may require updates.
  • 🆕 New script – A fully functional and tested script or script set.
  • 🌍 Website update – Changes to website-related JSON files or metadata.
  • 🔧 Refactoring / Code Cleanup – Improves readability or maintainability without changing functionality.
  • 📝 Documentation update – Changes to README, AppName.md, CONTRIBUTING.md, or other docs.

🔍 Code & Security Review (X in brackets)

  • Follows CODE-AUDIT.md & CONTRIBUTING.md guidelines
  • Uses correct script structure (AppName.sh, AppName-install.sh, AppName.json)
  • No hardcoded credentials
  • No Docker / Docker Compose – The application is installed bare-metal; Docker is not used.
  • No git pull – Updates use fetch_and_deploy_gh_release, fetch_and_deploy_codeberg_release, fetch_and_deploy_gl_release, or fetch_and_deploy_from_url instead of git pull.

🤖 AI Assistance (X in brackets)

If you used an AI tool (GitHub Copilot, Claude, ChatGPT, etc.) to write or generate any scripts in this PR, you must confirm compliance below.
Select exactly one option.

  • No AI used – Scripts were written without AI assistance.
  • AI was used – I confirm the scripts were built using AGENTS.md and .github/agents/pve-script-creator.agent.md as guidance, and the output has been reviewed and corrected to match those guidelines.

📋 Additional Information (optional)

Fully tested on PVE 9.2.4 (amd64, Debian 13 LXC, unprivileged, 1 vCPU / 512 MiB / 2 GB):

  • Fresh install (default mode): container creation, install, service start all clean
  • Web UI and REST API reachable on port 291 (/api/status healthy)
  • nmap scan inside the unprivileged container works fully, including MAC address and vendor detection
  • Update path verified end-to-end (downgraded version stamp 3.0.0 → re-run → 3.0.1 deployed), plus no-op path and recovery from a deleted binary

Notes:

  • Star count: the app currently has ~437 GitHub stars (below the 600 guideline). It is 6+ months old, MIT-licensed, actively maintained (last push 2026-07-19) and ships proper release tarballs for amd64/arm64. Submitting for your discretionary review; happy to park this until the project crosses the threshold if you prefer.
  • Logo: selfhst/icons has no icon for this app yet, so the JSON uses the upstream SVG via jsdelivr (same pattern as e.g. omnitools). An icon request in the selfhst discussions can follow, and the URL can be switched once available.
  • Upstream's checked-in install.sh/systemd unit target the legacy PHP implementation (v1/v2) and were intentionally not used; v3.x is a static Go binary.

📦 Application Requirements (for new scripts)

⚠️ Do not remove this section.
It is used by automated PR validation checks.
If this PR is not a new script submission, leave the checkboxes unchecked.

Required for 🆕 New script submissions.
Pull requests that do not meet these requirements may be closed without review.

  • The application is at least 6 months old
  • The application is actively maintained
  • The application has 600+ GitHub stars
  • Official release tarballs are published
  • I understand that not all scripts will be accepted due to various reasons and criteria by the community-scripts ORG

🌐 Source

https://github.com/291-Group/LAN-Orangutan

@corgan2222
corgan2222 requested a review from a team as a code owner July 20, 2026 01:07
@github-actions

Copy link
Copy Markdown
Contributor

Pull Request Closed – Application Requirements Not Met

This pull request is marked as 🆕 New script, but the required application criteria were not confirmed.

The following requirement confirmations are missing:

  • The application has 600+ GitHub stars

New application submissions must meet the project requirements before being considered.
Please wait until the application satisfies the criteria before submitting a new PR.


Maintainer note

The team periodically reviews closed submissions. If a project is still considered valuable to the ecosystem, maintainers may reopen the PR even if it does not fully meet the thresholds.

Please do not ping or repeatedly contact maintainers to reopen PRs.

@github-actions

Copy link
Copy Markdown
Contributor

Pull Request Closed – Application Requirements Not Met

This pull request is marked as 🆕 New script, but the required application criteria were not confirmed.

The following requirement confirmations are missing:

  • The application has 600+ GitHub stars

New application submissions must meet the project requirements before being considered.
Please wait until the application satisfies the criteria before submitting a new PR.


Maintainer note

The team periodically reviews closed submissions. If a project is still considered valuable to the ecosystem, maintainers may reopen the PR even if it does not fully meet the thresholds.

Please do not ping or repeatedly contact maintainers to reopen PRs.

@github-actions github-actions Bot closed this Jul 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants