{"id":18714876,"url":"https://github.com/arenekosreal/armutils","last_synced_at":"2026-04-20T03:38:14.249Z","repository":{"id":110916771,"uuid":"608091184","full_name":"arenekosreal/armutils","owner":"arenekosreal","description":"Unofficial mirror from https://gitlab.com/mipimipi/armutils","archived":false,"fork":false,"pushed_at":"2023-03-01T11:17:06.000Z","size":84,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-12-28T09:39:13.019Z","etag":null,"topics":["archlinuux","archlinux","archlinuxarm","armutils","qemu","qemu-user-static","systemd-nspawn"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/arenekosreal.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}},"created_at":"2023-03-01T09:54:11.000Z","updated_at":"2024-12-03T05:38:47.000Z","dependencies_parsed_at":"2024-02-06T06:47:29.043Z","dependency_job_id":null,"html_url":"https://github.com/arenekosreal/armutils","commit_stats":null,"previous_names":["arenekosreal/armutils"],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arenekosreal%2Farmutils","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arenekosreal%2Farmutils/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arenekosreal%2Farmutils/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arenekosreal%2Farmutils/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/arenekosreal","download_url":"https://codeload.github.com/arenekosreal/armutils/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239576744,"owners_count":19662114,"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":["archlinuux","archlinux","archlinuxarm","armutils","qemu","qemu-user-static","systemd-nspawn"],"created_at":"2024-11-07T13:06:37.965Z","updated_at":"2026-04-20T03:38:14.179Z","avatar_url":"https://github.com/arenekosreal.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"**armutils will no longer be maintained**\n\n[![REUSE status](https://api.reuse.software/badge/gitlab.com/mipimipi/armutils)](https://api.reuse.software/info/gitlab.com/mipimipi/armutils)\n# armutils\n\nWith [chroot](https://wiki.archlinux.org/index.php/Chroot) environments and [QEMU](https://wiki.archlinux.org/index.php/QEMU) it's possible to build Arch Linux packages for [ARM architectures](https://en.wikipedia.org/wiki/ARM_architecture) in a rather simple and convenient way. **armutils** provides the corresponding tools:\n\n* `mkarmchroot` creates an Arch Linux chroot environment for an ARM architecture from an image file. Such image files can be downloaded from [Arch Linux ARM](https://archlinuxarm.org)\n* `arm-nspawn` spawns a command in an ARM chroot environment, wrapping `systemd-nspawn`\n* `makearmpkg` builds a package in an ARM chroot environment\n\nThese tools mimic the behaviour of their x86_64 counterparts `mkarchroot`, `arch-nspawn` and `makechrootpkg`. [qemu-user-static](https://archlinux.org/packages/?name=qemu-user-static) and [qemu-user-static-binfmt](https://archlinux.org/packages/?name=qemu-user-static-binfmt) are used to \"translate\" between the ARM chroot and the x86_64 host.\n\n## mkarmchroot\n\n`mkarmchroot` is an implementation of the approach described on [nerdstuff.org](https://nerdstuff.org/posts/2020/2020-003_simplest_way_to_create_an_arm_chroot/). The tool must be called with:\n\n* either an URL of an ARM image archive or the path of an image archive on the local file system. Such an image can be obtained from [Arch Linux ARM](https://archlinuxarm.org) for different ARM architectures.\n* the desired path of the root directory of the new chroot environment\n* a list of packages / package groups that shall be installed.\n\n`mkarmchroot` creates the root folder for the chroot environment, extracts the image files into it, updates the environment and installs the packages.\n\n## arm-nspawn\n\n`arm-nspawn` is a fork of `arch-nspawn` with major changes since `arch-nspawn` is made to be used for x86_64 chroot environments. The interfaces of both commands are almost equal - `arm-nspawn`does not provide the `-s` option.\n\n**Using `arch-chroot` to execute commands in ARM chroots can lead to strange error messages, therefore I recommended to use `arm-nspawn`instead.**\n\n## makearmpkg\n\n`makearmpkg` is a fork of `makechrootpkg` with minor changes since `makechrootpkg` is made to be used for x86_64 chroot environments. The calls of `arch-nspawn` are replaced by calls of `arm-nspawn`. The interfaces and functionalities of `makearmpkg` and `makechrootpkg` are equal. It requires a chroot environment where the packages of `base-devel` are installed.\n\n## Example\n\nThe command\n\n    $ mkarmchroot -u http://os.archlinuxarm.org/os/ArchLinuxARM-aarch64-latest.tar.gz \u003cYOUR-PATH\u003e/aarch64/root base-devel\n\ncreates a chroot environment for ARMv8 / AArch64 under the folder `\u003cYOUR-PATH\u003e/aarch64/root` and installs the package group `base-devel`.\n\nIf the PKGBUILD file of an [AUR](https://aur.archlinux.org) package is stored in `\u003cYOUR-PATH\u003e/pkg`, the package can be built with:\n\n    $ cd \u003cYOUR-PATH\u003e/pkg\n    $ sudo makearmpkg -r ../aarch64 -- -c --syncdeps --noconfirm\n\nThe options `-c`, `--syncdeps` and `--noconfirm` are passed to `makepkg`. `makapkg` cleans the working directory after the build (`-c`), installs missing dependencies (`--syncdeps`) and suppresss user input (`--noconfirm`).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farenekosreal%2Farmutils","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farenekosreal%2Farmutils","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farenekosreal%2Farmutils/lists"}