Skip to content

Let's build an alpha #37

Description

@piranna

I have created a milestione so we can start to focus on develop an initial public release. We can discuss here what things should be added. Please maintain the features to the minimal (it's a first release, after all), and just put here what the idea, but develop them in a new issue.

  • update & improve documentation
  • minimal system
    • ramdisk root filesystem bundle (kernel + node binary packed in a ramdisk image)
    • minit (minimal init for PID 1)
    • boot module (for starting dhcp/getty via asgard)
    • asgard (to run as PID 2) Using forever-starter instead
      • getty replacement written in Node.js (for binding to /dev/console)
    • multiuser (logon + filesystem permissions)
    • OverlayFS-based root filesystem
      • read-only ramdisk root filesystem
    • network support
      • enable/disable network interfaces
      • static IPs
    • command line tools
    • The Big Red Button (script to build everything with just one command)
      • generate images for all platforms at once
      • prepare an empty file system
      • install all system packages (download?)
    • different UIDs & GIDs for each user home folder
      • DevicesManager (/dev filesystem)
    • /proc accesible for everybody
    • fbdev
  • Instalable distro
    • Self-contained source code
      • custom, minimal compiled kernel
      • libraries
    • Multiple architectures
      • x86
      • x86_64
    • Multiple platforms
      • Docker Use Vagga, maybe with Docker compatibility
      • x86 QEmu
      • x86_64 QEmu
    • Run on hardware
      • kernel & initramfs in rootfs images
      • GRUB image (instalable by hand with dd and/or cp/script)
  • no binary executables (only libraries bindings, executables are only Node.js programs)
    • replace /usr/bin/env with Javascript alternative (function? NODE_PATH? patched kernel? script with hard-coded she-bang?)

Minor tasks:

  • Read kernel arguments from /proc (root and home)
  • Allow logon to create new users
  • Move root home to usersfs
  • Make usersfs ownership to root
  • Mount rootfs as read-only

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions