Skip to content

Interested-Deving-1896/penguins-eggs

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2,615 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

[update-readmes] Mode: rewrite — migrating to template structure...

penguins-eggs

Built with Ona

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.

Architecture

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:

  1. CLI Commands: Defined in the bin/run.js entry point, powered by oclif plugins for autocomplete, help, and versioning.
  2. System Utilities: Dependencies like systeminformation, linux-release-info, and tftp handle system-level operations.
  3. Rendering and Interaction: Uses ink and inquirer for interactive terminal UIs, with additional libraries for progress bars and spinners.
  4. Configuration and Templates: Managed using js-yaml and mustache.
  5. Custom Integrations: Located in the integrations directory, providing project-specific extensions.
  6. 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

Install

git clone https://github.com/Interested-Deving-1896/penguins-eggs.git
cd penguins-eggs

Usage

Create a clean ISO

Produces a distributable live ISO without user data:

sudo eggs produce

Clone your system

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)

Compression options

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

Configuration

CI

  • 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_TOKEN for publishing to npm.
  • docs.yml: Builds and deploys documentation to the specified hosting service. Requires GH_PAGES_TOKEN for 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_TOKEN for authentication.
  • cleanup-branches.yml: Deletes stale branches from the repository. No secrets required.
  • sync-to-gitlab.yml: Syncs repository changes to GitLab. Requires GITLAB_TOKEN for authentication.
  • rotate-token.yml: Rotates API tokens used in workflows. Requires ADMIN_TOKEN for token management.
  • trigger-artifact-mirror.yml: Triggers artifact mirroring workflows. No secrets required.

Mirror chain

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.

Contributors

@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.

Origins

Original project — no upstream fork.

Resources

No additional resource files found.

License

About

On the road of Remastersys, Refracta, Systemback and father Knoppix!

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • TypeScript 58.8%
  • Shell 37.4%
  • HTML 2.4%
  • Python 0.4%
  • Mustache 0.3%
  • QML 0.3%
  • Other 0.4%