{"id":15988558,"url":"https://github.com/woile/ganix-iso","last_synced_at":"2025-03-27T06:31:05.176Z","repository":{"id":147787701,"uuid":"616349367","full_name":"woile/ganix-iso","owner":"woile","description":"Generate Nix ISO images using github actions and flakes","archived":false,"fork":false,"pushed_at":"2023-04-17T11:37:18.000Z","size":37,"stargazers_count":2,"open_issues_count":0,"forks_count":11,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-27T05:04:37.293Z","etag":null,"topics":["nix","nix-image","nixos","raspberry-pi"],"latest_commit_sha":null,"homepage":"","language":"Nix","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/woile.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2023-03-20T08:04:09.000Z","updated_at":"2024-08-26T17:51:21.000Z","dependencies_parsed_at":"2023-05-27T14:45:10.922Z","dependency_job_id":null,"html_url":"https://github.com/woile/ganix-iso","commit_stats":{"total_commits":26,"total_committers":1,"mean_commits":26.0,"dds":0.0,"last_synced_commit":"6921fcee2b1043db38c4960906a30583d0c4253a"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/woile%2Fganix-iso","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/woile%2Fganix-iso/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/woile%2Fganix-iso/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/woile%2Fganix-iso/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/woile","download_url":"https://codeload.github.com/woile/ganix-iso/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245797388,"owners_count":20673845,"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":["nix","nix-image","nixos","raspberry-pi"],"created_at":"2024-10-08T04:05:26.152Z","updated_at":"2025-03-27T06:31:05.158Z","avatar_url":"https://github.com/woile.png","language":"Nix","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ganix ISO\n\n\u003e Build custom ISO images for Nix using github actions\n\n## Goals\n\nEasy to create, custom ISO images for [NixOS](https://nixos.org/) starting with raspberry pi.\n\nThe idea is to create a simple ISO image with some presets, then use something like\n[deploy-rs](https://github.com/serokell/deploy-rs) to update the raspis.\n\n## Who is this for?\n\nIf you need to build a quick raspi custom image using nixos, this repo is for you.\nIt also works well if you want to experiment with nixos.\n\nAn alternative, and more advanced approach, is to create a nixos image for your raspberry, with the most basic features, and then, use something like [deploy-rs](https://github.com/serokell/deploy-rs) or [bento](https://github.com/rapenne-s/bento) to update and configure your raspberries.\n\n## Usage\n\n1. Fork this repo\n2. Go to the github actions section\n3. Click on \"Build ISO\"\n4. Trigger the workflow with the inputs you want to customize\n5. Wait\n6. Download the ISO\n7. Flash it\n\nWhen you fork the repo, you can custommize the `ganix.nix` file, and you won't need to provide\nthe env variables for the github action\n\n## Development\n\n### Check all is good\n\n```sh\nnix flake check --impure\n```\n\n### Build\n\nSupported arch `aarch64-linux`\n\n```sh\nnix build\n```\n\n### Burning image to SD-card\n\nPlug sd-card.\n\nFind out USB's location.\n\n| Mac             | Linux      |\n| --------------- | ---------- |\n| `diskutil list` | `lsblk -l` |\n\n(output e.g: `/dev/disk2`)\n\nCheck that the SD is unmounted\n\n| Mac                                    | Linux                   |\n| -------------------------------------- | ----------------------- |\n| `sudo diskutil unmountDisk /dev/disk2` | `sudo umount /dev/sda2` |\n\nBurn the `.img` to the sd-card\n\n\n```sh\nsudo dd if=result/nixos-sd-image-23.05.20230326.0cd51a9-aarch64-linux.img of=/dev/disk2 bs=1m status=progress\n```\n\nRemember to download the img and unzip it from the github action.\n\nGood luck!\n\n## What services can you configure?\n\nTake a look at [nixos configuration](https://nixos.org/manual/nixos/stable/index.html#ch-configuration).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwoile%2Fganix-iso","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwoile%2Fganix-iso","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwoile%2Fganix-iso/lists"}