{"id":13711073,"url":"https://github.com/clearlinux/clr-init","last_synced_at":"2025-02-25T09:22:13.211Z","repository":{"id":47561506,"uuid":"118166592","full_name":"clearlinux/clr-init","owner":"clearlinux","description":"Initrd created using systemd as init program","archived":false,"fork":false,"pushed_at":"2023-12-13T18:22:59.000Z","size":884,"stargazers_count":10,"open_issues_count":1,"forks_count":7,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-01-07T23:48:59.062Z","etag":null,"topics":["boot","initrd","systemd"],"latest_commit_sha":null,"homepage":"","language":"Makefile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/clearlinux.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING","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}},"created_at":"2018-01-19T19:07:52.000Z","updated_at":"2025-01-07T03:23:12.000Z","dependencies_parsed_at":"2024-05-08T00:46:24.776Z","dependency_job_id":null,"html_url":"https://github.com/clearlinux/clr-init","commit_stats":null,"previous_names":[],"tags_count":36,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clearlinux%2Fclr-init","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clearlinux%2Fclr-init/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clearlinux%2Fclr-init/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clearlinux%2Fclr-init/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/clearlinux","download_url":"https://codeload.github.com/clearlinux/clr-init/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240637766,"owners_count":19833189,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["boot","initrd","systemd"],"created_at":"2024-08-02T23:01:04.147Z","updated_at":"2025-02-25T09:22:13.104Z","avatar_url":"https://github.com/clearlinux.png","language":"Makefile","readme":"## clr-init\nInitrd created using systemd as init program\n\n## Luks Encryption support\n\nThe systemd rd parameters for luks most be added to the kernel cmdline to know who is the encrypted root partition:\nhttps://www.freedesktop.org/software/systemd/man/systemd-cryptsetup-generator.html#Kernel%20Command%20Line\n\nThis initrd most not be using with LVM partitons, how ever it could be complemented adding services in an additional initrd\n\n## How this works\n\nThis is the flow of an initrd with systemd:\n```\n    +----------------+\n    | systemd (init) |\n    +----------------+\n               +\n               v\n    +--------------------------------+\n    | system-generators              |\n    |--------------------------------|\n    | nfs-server-generator           |\n    | rpc-pipefs-generator           |\n    | systemd-cryptsetup-generator   |\n    | systemd-debug-generator        |\n    | systemd-fstab-generator        |\n    | systemd-getty-generator        |\n    | systemd-gpt-auto-generator     |\n    | systemd-system-update-generator|\n    | systemd-veritysetup-generator  |\n    +--------------------------------+\n               +\n               |\n               v\n     +-------------------+\n     |local-fs-pre.target|\n     +-------------------+\n               +\n               |\n               |\n               |\n               v\n +-----------------------------+        +-----------------+         +-----------------------+\n |  local-fs.target            |        |  swap.target    |         |  cryptsetup.target    |\n |-----------------------------|        |-----------------|         |-----------------------|\n |                             |        |                 |         |                       |\n |  tmp.mount                  |        |  (various swap  |         |  (various cryptsetup  |\n |  systemd-remount-fs.service |        |   devices...)   |         |      devices...)      |\n |                             |        |                 |         |                       |\n +-----------------------------+        +-----------------+         +-----------------------+\n               +                               |                               |\n               |                               |                               |\n               +------------------------------\u003e|\u003c------------------------------+\n                                               v\n                           +--------------------------------------+\n                           |  sysinit.target                      |\n                           |--------------------------------------|\n                           |  systemd-ask-password-console.path   |\n                           |  systemd-tmpfiles-setup-dev.service  |\n                           |  systemd-tmpfiles-setup.service      |\n                           |  systemd-udevd.service               |\n                           |  systemd-udev-trigger.service        |\n                           +--------------------------------------+\n                                               +\n                                               |\n         +------------------+-----------------+|+---------------+------------------------+\n         |                  |                  |                |                        |\n         |                  |                  |                |                        |\n         v                  v                  |                v                        v\n +----------------+ +----------------+         |  +------------------------------++---------------+\n |  timers.target | |  paths.target  |         |  |  sockets.target              || rescue.target |\n |----------------| |----------------|         |  |------------------------------|+---------------+\n |   (various     | |  (various      |         |  |  systemd-udevd-control.socket|\n |  timers...)    | |  paths...)     |         |  |  systemd-udevd-kernel.socket |\n |                | |                |         |  |                              |\n +----------------+ +----------------+         |  +------------------------------+\n                           +                   |                +\n                           |                   |                |\n                           |                   |                |\n                           +------------------\u003e|\u003c---------------+\n                                               |\n                                               |\n                                               |\n                                               v\n                                        +------------+\n                                        |basic.target|\n                                        +------------+\n                                               +\n                                               |\n                                               v\n                                +--------------------------------+              +----------------+\n                                |  initrd-root-device.target     |              |emergency.target|\n                                |--------------------------------|              +----------------+\n                                |         sysroot.mount          |\n                                +--------------------------------+\n                                               +\n                                               |\n                                               v\n                                +--------------------------------+\n                                |    initrd-root-fs.target       |\n                                |--------------------------------|\n                                |   initrd-parse-etc.service     |\n                                +--------------------------------+\n                                               +\n                                               |\n                                               v\n                                +--------------------------------+\n                                |      initrd-fs.target          |\n                                |--------------------------------|\n                                |   (sysroot-usr.mount and       |\n                                |    various mounts marked       |\n                                |      with fstab option         |\n                                |     x-initrd.mount...)         |\n                                +--------------------------------+\n                                               +\n                                               |\n                                               v\n                              +------------------------------------+\n                              |           initrd.target            |\n                              |------------------------------------|\n                              |      initrd-cleanup.service        |\n                              | initrd-udevadm-cleanup-db.service  |\n                              +------------------------------------+\n                                               +\n                                               |\n                                               v\n                                +-------------------------------+\n                                |  initrd-switch-root.target    |\n                                |-------------------------------|\n                                |                               |\n                                |  initrd-switch-root.service   |\n                                |                               |\n                                +-------------------------------+\n                                               +\n                                               |\n                                               v\n                                   +------------------------+\n                                   | Transition to Host OS  |\n                                   +------------------------+\n```\n\n## Create and Install\n\nThis will install clr-init.cpio.gz in /usr/lib/initrd\n```\nmake \u0026\u0026 make install\n```\n","funding_links":[],"categories":["Projects"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclearlinux%2Fclr-init","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fclearlinux%2Fclr-init","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclearlinux%2Fclr-init/lists"}