{"id":28158112,"url":"https://github.com/n0tfond/script","last_synced_at":"2026-01-25T03:16:28.543Z","repository":{"id":291037090,"uuid":"976376793","full_name":"N0tFond/Script","owner":"N0tFond","description":"A little script for installation of package, avaible on Debian and Arch for the moment","archived":false,"fork":false,"pushed_at":"2025-07-01T21:53:52.000Z","size":24,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-27T19:12:59.900Z","etag":null,"topics":["archlinux","debian","installer","script","utilities","utils"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/N0tFond.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-05-02T02:14:01.000Z","updated_at":"2025-07-01T21:53:55.000Z","dependencies_parsed_at":"2025-05-02T03:23:43.461Z","dependency_job_id":"779f4ecc-bdb7-4412-8187-18a6c03a3ca3","html_url":"https://github.com/N0tFond/Script","commit_stats":null,"previous_names":["n0tfond/script"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/N0tFond/Script","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/N0tFond%2FScript","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/N0tFond%2FScript/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/N0tFond%2FScript/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/N0tFond%2FScript/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/N0tFond","download_url":"https://codeload.github.com/N0tFond/Script/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/N0tFond%2FScript/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28742973,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-25T02:46:29.005Z","status":"ssl_error","status_checked_at":"2026-01-25T02:44:29.968Z","response_time":113,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["archlinux","debian","installer","script","utilities","utils"],"created_at":"2025-05-15T09:16:12.251Z","updated_at":"2026-01-25T03:16:28.522Z","avatar_url":"https://github.com/N0tFond.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🚀 Universal Linux Installer\n\nA universal and optimized installation script for Linux distributions, supporting a wide range of distribution families with automatic detection.\n\n[Version en français dans LISEZMOI.md](./LISEZMOI.md)\n\n## ✨ Features\n\n- 🔍 **Automatic detection** of Linux distribution\n- 📦 **Multi-distribution support** with specialized scripts\n- 🎯 **Modular installation** with interactive package selection\n- 🛠️ **Optimized configuration** for each package manager\n- 📊 **Progress bars** and detailed logging\n- 🔧 **Complete development environment**\n- 🐚 **ZSH configuration** with Oh My Zsh\n- 📝 **Complete logging** for debugging\n- 🧹 **Automatic system cleanup**\n\n## 🏗️ Project Structure\n\n```\n├── install.sh                    # Main script with auto detection\n├── common/\n│   └── functions.sh              # Shared common functions\n└── distributions/\n    ├── debian/\n    │   └── install.sh           # Ubuntu, Debian, Mint, Elementary, Pop!_OS, Kali\n    ├── arch/\n    │   └── install.sh           # Arch, Manjaro, EndeavourOS, ArcoLinux, Garuda\n    ├── redhat/\n    │   └── install.sh           # Fedora, CentOS, RHEL, Rocky, AlmaLinux, OpenSUSE\n    ├── gentoo/\n    │   └── install.sh           # Gentoo Linux\n    ├── alpine/\n    │   └── install.sh           # Alpine Linux\n    ├── void/\n    │   └── install.sh           # Void Linux\n    └── nixos/\n        └── install.sh           # NixOS\n```\n\n## 🐧 Supported Distributions\n\n### Debian Family\n\n- **Ubuntu** (all versions)\n- **Debian** (stable, testing, unstable)\n- **Linux Mint**\n- **Elementary OS**\n- **Pop!\\_OS**\n- **Kali Linux**\n- **Parrot Security OS**\n\n### Arch Family\n\n- **Arch Linux**\n- **Manjaro**\n- **EndeavourOS**\n- **ArcoLinux**\n- **Garuda Linux**\n- **Artix Linux**\n\n### Red Hat Family\n\n- **Fedora**\n- **CentOS**\n- **Red Hat Enterprise Linux (RHEL)**\n- **Rocky Linux**\n- **AlmaLinux**\n- **OpenSUSE**\n\n### Other Distributions\n\n- **Gentoo Linux** - Source-based compilation\n- **Alpine Linux** - Lightweight musl-based distribution\n- **Void Linux** - Rolling release with runit\n- **NixOS** - Declarative configuration\n\n## 🚀 Quick Installation\n\n### Simple Usage\n\n```bash\n# Clone the repository\ngit clone https://github.com/N0tFond/Script.git\ncd Script\n\n# Make the script executable\nchmod +x install.sh\n\n# Run the installation (script automatically detects your distribution)\n./install.sh\n```\n\n### Specific Installation\n\nIf you want to force a specific distribution:\n\n```bash\n# For Ubuntu/Debian\n./distributions/debian/install.sh ubuntu\n\n# For Arch Linux\n./distributions/arch/install.sh arch\n\n# For Fedora\n./distributions/redhat/install.sh fedora\n```\n\n## ⚠️ Critical Warnings\n\n\u003e [!IMPORTANT]\n\u003e **Distribution not detected**: If the script fails to identify your Linux distribution, the installation will terminate immediately with an error code.\n\n### � Detection Problem Resolution\n\n\u003e [!WARNING]\n\u003e **Automatic detection failure** can occur on custom or very recent distributions.\n\n**Recommended solutions:**\n\n1. **Compatibility verification**\n\n   ```bash\n   # Check your distribution\n   cat /etc/os-release\n   ```\n\n2. **Forced installation** for compatible distributions\n\n   ```bash\n   # Debian-based distribution (Ubuntu, Mint, Elementary, etc.)\n   ./distributions/debian/install.sh ubuntu\n\n   # Arch-based distribution (Manjaro, EndeavourOS, etc.)\n   ./distributions/arch/install.sh arch\n\n   # Red Hat-based distribution (Fedora, CentOS, etc.)\n   ./distributions/redhat/install.sh fedora\n   ```\n\n3. **Technical support**\n\n\u003e [!NOTE]\n\u003e Create a GitHub issue with the following information:\n\u003e\n\u003e - Output of `cat /etc/os-release`\n\u003e - Kernel version (`uname -r`)\n\u003e - Complete error messages\n\n### 🛡️ Security Recommendations\n\n\u003e [!CAUTION]\n\u003e **Mandatory testing**: Always test on a virtual machine before production deployment.\n\u003e\n\u003e - **Complete backup** of critical data\n\u003e - **System restore point** if available\n\u003e - **Sudo privileges verification** before execution\n\u003e - **Stable internet connection** required during installation\n\n\u003e [!TIP]\n\u003e **Debug mode**: Add `bash -x` for detailed diagnostics\n\u003e\n\u003e ```bash\n\u003e bash -x ./install.sh\n\u003e ```\n\n## 📦 Installed Packages\n\n### Base Packages\n\n- **System tools**: git, curl, wget, htop, tree, unzip\n- **Shell**: zsh with Oh My Zsh\n- **System information**: neofetch\n\n### Development Tools\n\n- **Node.js** via NVM (version 22)\n- **Python 3** with pip\n- **Compilers**: gcc, make, build-essential\n- **Git** with interactive configuration\n\n### Applications\n\n- **Editor**: Visual Studio Code\n- **Browsers**: Firefox, Chrome\n- **Media**: VLC, Spotify\n- **Communication**: Discord\n- **Productivity**: LibreOffice\n- **Graphics**: GIMP\n\n### Alternative Package Managers\n\n- **Flatpak** with Flathub\n- **Snap** (Ubuntu)\n- **AUR helpers** (Arch - yay)\n\n## 🔧 Features by Distribution\n\n### Debian/Ubuntu\n\n- Official and third-party repository configuration\n- PPA and external repository support\n- Installation via APT, Flatpak and Snap\n\n### Arch Linux\n\n- Optimized Pacman configuration\n- AUR helper installation (yay)\n- Service management with systemd\n- Automatic cleanup of orphaned packages\n\n### Fedora/RHEL\n\n- RPM Fusion configuration\n- EPEL repository management\n- SELinux support\n- Firewalld configuration\n\n### Gentoo\n\n- Portage optimization (MAKEOPTS, USE flags)\n- Overlay management with Layman\n- OpenRC services\n- Optimized parallel compilation\n\n### Alpine\n\n- Glibc compatibility for applications\n- Lightweight package management\n- OpenRC services\n- Musl libc optimizations\n\n### Void Linux\n\n- Optimized XBPS configuration\n- Runit services\n- Multilib and non-free repositories\n- Intelligent cache management\n\n### NixOS\n\n- Declarative configuration\n- Home-manager setup\n- Flakes support\n- Automatic garbage collection\n\n## ⚙️ Configuration Options\n\nThe script offers several levels of customization:\n\n### Interactive Installation\n\n- Package category selection\n- Individual application choices\n- System service configuration\n- Distribution-specific optimizations\n\n### Automated Configuration\n\n- Pre-defined environment variables\n- Default configuration scripts\n- Automatic post-installation cleanup\n\n## 📝 Logging and Debugging\n\n- **Log file**: `installation.log` in the script directory\n- **Color codes** for better readability\n- **Complete error handling** with rollback\n- **Progress bars** for long operations\n\n## 🛡️ Security\n\n- **Privilege verification**: The script refuses to run as root\n- **User input validation**\n- **Repository signature verification**\n- **Automatic backup** of system configurations\n\n## 🚨 Prerequisites\n\n- **Active internet connection**\n- **Sudo privileges** for the user\n- **Bash 4.0+** minimum\n- **Supported Linux distribution**\n\n## 🤝 Contributing\n\nContributions are welcome! Here's how to contribute:\n\n1. **Fork** the project\n2. **Create** a feature branch (`git checkout -b feature/new-distribution`)\n3. **Commit** your changes (`git commit -m 'Add support for XYZ'`)\n4. **Push** to the branch (`git push origin feature/new-distribution`)\n5. **Create** a Pull Request\n\n### Adding a New Distribution\n\n1. Create a folder in `distributions/family-name/`\n2. Create an `install.sh` script based on existing templates\n3. Add detection in the main script\n4. Test on the target distribution\n\n## 📄 License\n\nThis project is licensed under MIT. See the [LICENSE](LICENSE) file for more details.\n\n| Author |\n| :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:\n| [\u003cimg src=\"https://avatars.githubusercontent.com/u/92156365?s=400\u0026u=03e2069751224461782a03ba2dfa57a51c4e5438\u0026v=4\" width=115 style=\"border-radius: 15px;\" \u003e\u003cbr\u003e\u003csub\u003e@notfound\u003c/sub\u003e](https://github.com/N0tFond) \u003cbr\u003e\u003cbr\u003e [![](https://img.shields.io/badge/Portfolio-255E63?style=for-the-badge\u0026logo=About.me\u0026logoColor=white)](https://notfound-dev.vercel.app)\n\n## 🔄 Changelog\n\n### Version 3.0 (October 2025)\n\n- 🔒 **Complete security audit** with detailed report and enhanced configuration\n- 🛡️ **Security scripts**: `security-audit.sh` for automated system checks\n- 📋 **Improved detection tests** with `test-detection.sh` for multi-distribution validation\n- 🔄 **Migration script** `migrate.sh` for smooth version updates\n- 📚 **Multilingual documentation** with English README (`EN_README.md`)\n- 🔧 **Centralized security configuration** via `security.conf`\n- 🧪 **Automated testing** to ensure cross-distribution compatibility\n- 🔍 **Vulnerability detection** and security recommendations\n- 📊 **Performance metrics** and installation monitoring\n- 🛠️ **Optimized common functions** in `common/functions.sh`\n\n### Version 2.0 (September 2024)\n\n- ✨ Complete refactoring with modular architecture\n- 🚀 Support for 7 Linux distribution families\n- 📊 Improved user interface with progress bars\n- 🔧 Optimized configuration per distribution\n- 📝 Advanced logging and error handling\n- 🧹 Intelligent automatic cleanup\n- 🎯 Modular and interactive installation\n\n### Version 1.0 (May 2024)\n\n- 🎉 Initial version for Arch and Debian\n- 📦 Basic installation with some applications\n- 🐚 Basic ZSH configuration\n\n## ⚠️ Warnings\n\n- **Always test** on a virtual machine before production use\n- **Backup** your important data before installation\n- **Read** logs in case of errors to diagnose problems\n- **Verify** compatibility with your specific distribution version\n\n## 🆘 Support\n\nIn case of problems:\n\n1. Check the `installation.log` file\n2. Review existing GitHub issues\n3. Create a new issue with the error log\n4. Specify your exact distribution and version\n\n---\n\n**⭐ Don't hesitate to star the project if it was useful to you!**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fn0tfond%2Fscript","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fn0tfond%2Fscript","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fn0tfond%2Fscript/lists"}