{"id":19643526,"url":"https://github.com/planktoscope/machine-name","last_synced_at":"2026-05-15T00:07:31.161Z","repository":{"id":165805170,"uuid":"641083334","full_name":"PlanktoScope/machine-name","owner":"PlanktoScope","description":"A tool for mapping serial numbers to language-localized names","archived":false,"fork":false,"pushed_at":"2025-02-20T05:22:16.000Z","size":582,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-02-25T00:57:01.603Z","etag":null,"topics":["go","haikunator","localization","raspberry-pi"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PlanktoScope.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE-Apache","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-05-15T18:39:41.000Z","updated_at":"2025-02-20T05:22:17.000Z","dependencies_parsed_at":"2024-02-06T02:25:18.446Z","dependency_job_id":"72aab38b-d48a-427d-ae73-be289dd72017","html_url":"https://github.com/PlanktoScope/machine-name","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PlanktoScope%2Fmachine-name","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PlanktoScope%2Fmachine-name/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PlanktoScope%2Fmachine-name/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PlanktoScope%2Fmachine-name/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PlanktoScope","download_url":"https://codeload.github.com/PlanktoScope/machine-name/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240949460,"owners_count":19883347,"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":["go","haikunator","localization","raspberry-pi"],"created_at":"2024-11-11T14:22:17.725Z","updated_at":"2026-05-15T00:07:30.490Z","avatar_url":"https://github.com/PlanktoScope.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# machine-name\nA tool for mapping serial numbers to language-localized names\n\n## Introduction\n\nDevices often assign a (pseudo-)unique serial number to each unit. However, each device may also need a (pseudo-) unique human-readable name for easy access, e.g. to network services. This package provides a one-to-one mapping between serial numbers (within a finite range) and Heroku-style names (i.e. two simple words followed by a short number, such as `friendly-cat-4827`). The names are constructed from word lists within a specific locale, so that the language used for the name can be localized. Additionally, the maximum allowed length of a generated name is 24 characters (strictly speaking, 24 bytes); this allows a short 8-character (strictly speaking, 8-byte) prefix to be prepended to the machine name (e.g. `pkscope-friendly-cat-4827`) for use as a Wi-Fi SSID, without violating the maximum allowed length of 32 bytes for a Wi-Fi SSID.\n\n## Usage\n\n### Deployment\n\nFirst, you will need to download machine-name, which is available as a single self-contained executable file. You should visit this repository's [releases page](https://github.com/PlanktoScope/machine-name/releases/latest) and download an archive file for your platform and CPU architecture; for example, on a Raspberry Pi 4, you should download the archive named `machine-name_{version number}_linux_arm.tar.gz` (where the version number should be substituted). You can extract the machine-name binary from the archive using a command like:\n```\ntar -xzf machine-name_{version number}_{os}_{cpu architecture}.tar.gz machine-name\n```\n\nThen you may need to move the machine-name binary into a directory in your system path, or you can just run the machine-name binary in your current directory (in which case you should replace `machine-name` with `./machine-name` in the commands listed below).\n\nOnce you have machine-name, you should run it as follows:\n```\nmachine-name name --format=hex --sn=0xd6b82659\n```\nbut replacing `0xd6b82659` with a 32-bit hex string representing a serial number. The program will then print the machine name corresponding to that serial number. For example, the following serial numbers will result in the following machine names:\n\n| Serial Number | Machine Name        |\n|---------------|---------------------|\n| `0xdeadc0de`  | metal-slope-23501   |\n| `0xd6b82659`  | chain-list-27764    |\n| `0x0`         | able-account-0      |\n| `0x1`         | small-ball-26954    |\n| `0x2`         | safe-minute-6738    |\n| `0x3`         | linen-opinion-33692 |\n| `0x4`         | cool-pocket-1684    |\n| `0x8123`      | clear-field-33719   |\n\n## Licensing\n\nExcept where otherwise indicated, source code provided here is covered by the following information:\n\nCopyright Ethan Li and PlanktoScope project contributors\n\nSPDX-License-Identifier: `Apache-2.0 OR BlueOak-1.0.0`\n\nYou can use the source code provided here either under the [Apache 2.0 License](https://www.apache.org/licenses/LICENSE-2.0) or under the [Blue Oak Model License 1.0.0](https://blueoakcouncil.org/license/1.0.0); you get to decide. We are making the software available under the Apache license because it's [OSI-approved](https://writing.kemitchell.com/2019/05/05/Rely-on-OSI.html), but we like the Blue Oak Model License more because it's easier to read and understand.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fplanktoscope%2Fmachine-name","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fplanktoscope%2Fmachine-name","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fplanktoscope%2Fmachine-name/lists"}