[update-readmes] Mode: rewrite — migrating to template structure...
Penguins Eggs is a remastering tool that enables users to create custom Linux distributions or live ISO images based on various Linux distributions, including Debian, Ubuntu, Arch, Fedora, and others. It is designed for system administrators, developers, and advanced users who need to customize and redistribute Linux environments for specific use cases.
The architecture consists of a CLI tool built with TypeScript, leveraging the oclif framework for command-line interfaces. It supports remastering Linux distributions and integrates with various system utilities and libraries. Key components include:
- CLI Commands: Defined in the
bin/run.jsentry point, powered by oclif plugins for autocomplete, help, and versioning. - System Utilities: Dependencies like
systeminformation,linux-release-info, andtftphandle system-level operations. - Rendering and Interaction: Uses
inkandinquirerfor interactive terminal UIs, with additional libraries for progress bars and spinners. - Configuration and Templates: Managed using
js-yamlandmustache. - Custom Integrations: Located in the
integrationsdirectory, providing project-specific extensions. - Workflows: GitHub Actions YAML files automate CI/CD, repository synchronization, and artifact management.
Directory structure:
├── bin/ # CLI entry point and command definitions
├── integrations/ # Custom integrations for specific distributions
├── .github/workflows/ # CI/CD workflow definitions
├── docs/ # Documentation files
├── src/ # Source code for core functionality
├── test/ # Test cases and utilities
├── package.json # Project metadata and dependencies
└── README.md # Project documentation
git clone https://github.com/Interested-Deving-1896/penguins-eggs.git
cd penguins-eggsProduces a distributable live ISO without user data:
sudo eggs produce| Goal | Command | Notes |
|---|---|---|
| Standard clone | eggs produce --clone |
User data copied unencrypted — do not share publicly |
| Home encryption | eggs produce --homecrypt |
/home encrypted with LUKS inside the ISO |
| Full encryption | eggs produce --fullcrypt |
Entire system encrypted (Debian/Devuan only) |
| Flag | Compressor | Use case |
|---|---|---|
| (default) | zstd fast | General use |
--pendrive |
zstd level 15 | Optimised for USB drives |
--standard |
xz | Smaller size, slower |
--max |
xz -Xbcj | Maximum compression |
- ci.yml: Runs linting, unit tests, and build checks for the project. No secrets required.
- codeql.yml: Performs static code analysis using GitHub CodeQL for security vulnerabilities. No secrets required.
- release.yml: Automates the release process, including version tagging and publishing. Requires
NPM_TOKENfor publishing to npm. - docs.yml: Builds and deploys documentation to the specified hosting service. Requires
GH_PAGES_TOKENfor GitHub Pages deployment. - iso-test.yml: Tests ISO builds for compatibility and functionality. No secrets required.
- mirror.yaml: Mirrors the repository to external services. Requires
MIRROR_TOKENfor authentication. - cleanup-branches.yml: Deletes stale branches from the repository. No secrets required.
- sync-to-gitlab.yml: Syncs repository changes to GitLab. Requires
GITLAB_TOKENfor authentication. - rotate-token.yml: Rotates API tokens used in workflows. Requires
ADMIN_TOKENfor token management. - trigger-artifact-mirror.yml: Triggers artifact mirroring workflows. No secrets required.
This repo is maintained in Interested-Deving-1896/penguins-eggs and mirrored through:
Interested-Deving-1896/penguins-eggs ──► OpenOS-Project-OSP/penguins-eggs ──► OpenOS-Project-Ecosystem-OOC/penguins-eggs
Changes flow downstream automatically via the hourly mirror chain in
fork-sync-all.
Direct commits to OSP or OOC are detected and opened as PRs back to Interested-Deving-1896.
@monstermunchkin - 818 commits @stgraber - 785 commits @Interested-Deving-1896 - 311 commits @itoffshore - 155 commits @pieroproietti - 56 commits @ona-agent - 50 commits @simondeziel - 32 commits @nanjj - 23 commits @masnax - 16 commits @brauner - 13 commits @mjrider - 11 commits @tew42 - 10 commits @ona-bot - 9 commits @chaosoffire - 9 commits @stefanor - 6 commits @rietbergenm - 5 commits @Obirvalger - 5 commits @nbuwe - 5 commits @adamcstephens - 5 commits @gibmat - 5 commits @hallyn - 5 commits @dependabot[bot] - 4 commits @web-flow - 4 commits @geaaru - 4 commits @eddyg - 3 commits @tenforward - 3 commits @marcosps - 3 commits @stiltr - 3 commits @timbretimber - 3 commits @foxtrotcz - 3 commits
Note: This repository may be a mirror. Please check the upstream source for more details.
Original project — no upstream fork.
No additional resource files found.