By creating this pull request, I grant the project maintainers an unlimited,
perpetual license to use, modify, and redistribute these contributions under any terms they
choose, including both the AGPLv3 and the Fossorial Commercial license terms. I
represent that I have the right to grant this license for all contributed content.
Description
Improves the install package with better error handling and code quality cleanups across multiple files. Replaces interface{} with any for YAML map types to use modern Go idioms.
How to test?
Run the installer and verify it completes without errors.
Test error paths (e.g., invalid config, missing input) to confirm errors are surfaced correctly instead of silently ignored.
Confirm CrowdSec and container setup still behave as expected.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.
## 📋 Pull Request Information
**Original PR:** https://github.com/fosrl/pangolin/pull/2491
**Author:** [@rodneyosodo](https://github.com/rodneyosodo)
**Created:** 2/17/2026
**Status:** ✅ Merged
**Merged:** 2/25/2026
**Merged by:** [@oschwartz10612](https://github.com/oschwartz10612)
**Base:** `dev` ← **Head:** `fix/install`
---
### 📝 Commits (2)
- [`ffbea7a`](https://github.com/fosrl/pangolin/commit/ffbea7af59eb549daa5cb3be8f031916e5f52861) fix(install): add error handling and minor code cleanups
- [`952d0c7`](https://github.com/fosrl/pangolin/commit/952d0c74d0b88d8a65a44c5b18aa03c9921a2ca0) refactor(install): use any for YAML map types instead of interface{}
### 📊 Changes
**5 files changed** (+91 additions, -65 deletions)
<details>
<summary>View changed files</summary>
📝 `install/config.go` (+19 -20)
📝 `install/containers.go` (+7 -6)
📝 `install/crowdsec.go` (+19 -10)
📝 `install/input.go` (+8 -6)
📝 `install/main.go` (+38 -23)
</details>
### 📄 Description
## Community Contribution License Agreement
By creating this pull request, I grant the project maintainers an unlimited,
perpetual license to use, modify, and redistribute these contributions under any terms they
choose, including both the AGPLv3 and the Fossorial Commercial license terms. I
represent that I have the right to grant this license for all contributed content.
## Description
Improves the install package with better error handling and code quality cleanups across multiple files. Replaces `interface{}` with `any` for YAML map types to use modern Go idioms.
## How to test?
1. Run the installer and verify it completes without errors.
2. Test error paths (e.g., invalid config, missing input) to confirm errors are surfaced correctly instead of silently ignored.
3. Confirm CrowdSec and container setup still behave as expected.
---
<sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
📋 Pull Request Information
Original PR: https://github.com/fosrl/pangolin/pull/2491
Author: @rodneyosodo
Created: 2/17/2026
Status: ✅ Merged
Merged: 2/25/2026
Merged by: @oschwartz10612
Base:
dev← Head:fix/install📝 Commits (2)
ffbea7afix(install): add error handling and minor code cleanups952d0c7refactor(install): use any for YAML map types instead of interface{}📊 Changes
5 files changed (+91 additions, -65 deletions)
View changed files
📝
install/config.go(+19 -20)📝
install/containers.go(+7 -6)📝
install/crowdsec.go(+19 -10)📝
install/input.go(+8 -6)📝
install/main.go(+38 -23)📄 Description
Community Contribution License Agreement
By creating this pull request, I grant the project maintainers an unlimited,
perpetual license to use, modify, and redistribute these contributions under any terms they
choose, including both the AGPLv3 and the Fossorial Commercial license terms. I
represent that I have the right to grant this license for all contributed content.
Description
Improves the install package with better error handling and code quality cleanups across multiple files. Replaces
interface{}withanyfor YAML map types to use modern Go idioms.How to test?
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.