diff --git a/.github/scripts/release.js b/.github/scripts/release.js index 287f80b..589c876 100644 --- a/.github/scripts/release.js +++ b/.github/scripts/release.js @@ -9,12 +9,12 @@ module.exports = async function ({ github, context, glob }) { ...context.repo, release_id: context.payload.release.id, }; - let body = "## Megabit OS\n"; - const globber = await glob.create("megabit-armhf.*.gz"); + let body = "## Yama\n"; + const globber = await glob.create("yama-armhf.*.gz"); for await (const file of globber.globGenerator()) { const name = path .basename(file) - .replace(/^megabit-armhf[.]/, `megabit-${version}-armhf.`); + .replace(/^yama-armhf[.]/, `yama-${version}-armhf.`); const data = await fs.readFile(file); await github.repos.uploadReleaseAsset({ ...target, name, data }); const hash = crypto.createHash("sha256").update(data).digest("hex"); diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7ddaa85..f8cd43b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -14,8 +14,8 @@ jobs: - run: sudo bin/img-gen - uses: actions/upload-artifact@v2 with: - name: megabit-armhf - path: megabit-armhf.* + name: yama-armhf + path: yama-armhf.* release: if: github.event.release.prerelease needs: main @@ -23,7 +23,7 @@ jobs: steps: - uses: actions/checkout@v2 - uses: actions/download-artifact@v2 - with: { name: megabit-armhf } + with: { name: yama-armhf } - uses: actions/github-script@v4 with: script: | diff --git a/.gitignore b/.gitignore index 3b57b86..96bf745 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,5 @@ /apkovl/ /cache/ /dist/ -/megabit-armhf.tar.gz -/megabit-armhf.img.gz +/yama-armhf.tar.gz +/yama-armhf.img.gz diff --git a/README.md b/README.md index 58df437..072cbeb 100644 --- a/README.md +++ b/README.md @@ -1,39 +1,10 @@ -# Megabit OS +# Yama -[Megabit](https://github.com/kou029w/megabit) をすぐに試せる実行環境とそれをビルドするためのツール群 +Raspberry Pi Zero 向け OS のビルドするためのツール群 -## 使い方 - -1. [Releases](https://github.com/kou029w/megabit-os/releases) から OS イメージをダウンロード -2. イメージを microSD カードに書き込み -3. Raspberry Pi Zero とパソコンを USB で接続し、2 分待つ -4. 自動的に認識される USB マスストレージのルートに index.js を作成することで自動的に実行 - - 注意: index.js 以外の node_modules/ などは無視されます - -## サンプルコード - -index.js - -```js -const { gpio } = require("megabit"); -const sleep = require("util").promisify(setTimeout); - -async function blink() { - for (;;) { - await gpio(26).write(1); - await sleep(1000); - await gpio(26).write(0); - await sleep(1000); - } -} - -blink(); -``` - -## 詳細 - -- Alpine Linux v3.14 ベース (armhf) -- Node.js v14.17.6 +- Alpine Linux ベース (armhf) +- WiFi 対応 +- その他オレオレカスタマイズ ## ビルド @@ -49,7 +20,7 @@ bin/img-gen - Docker - Docker Compose - qemu-user-static -- awk, bash, curl, fallocate, grep, gzip, gzip, losetup, mkfs.fat, parted, ruby, ssh-keygen, tar, xargs +- awk, bash, curl, fallocate, grep, gzip, losetup, mkfs.fat, parted, ruby, ssh-keygen, tar, xargs ### WiFi の設定 diff --git a/bin/build b/bin/build index 5c12b49..1f1be1e 100755 --- a/bin/build +++ b/bin/build @@ -15,4 +15,4 @@ cp -a usercfg.txt cache -t dist gzip -cdk overlay.img.gz > dist/overlay.img docker-compose run --rm builder tar czf dist/localhost.apkovl.tar.gz --owner=0 --group=0 -C apkovl . -tar czf megabit-armhf.tar.gz --owner=0 --group=0 -C dist . +tar czf yama-armhf.tar.gz --owner=0 --group=0 -C dist . diff --git a/bin/img-gen b/bin/img-gen index abfdb29..9f249e9 100755 --- a/bin/img-gen +++ b/bin/img-gen @@ -4,9 +4,9 @@ # Required: gzip awk fallocate parted xargs losetup mkfs.fat tar cd -- "$(dirname -- "$0")/.." set -eux -size="$(gzip -l megabit-armhf.tar.gz | awk 'END{printf"%.f",$2*1.02}')" -fallocate -l "${size}" megabit-armhf.img -xargs -l parted -s megabit-armhf.img <