{"id":13720893,"url":"https://github.com/swedishembedded/workstation","last_synced_at":"2026-03-09T00:21:13.369Z","repository":{"id":53917801,"uuid":"521774350","full_name":"swedishembedded/workstation","owner":"swedishembedded","description":"Docker based development environment for coding, building and flashing embedded firmware.","archived":false,"fork":false,"pushed_at":"2026-02-16T16:42:52.000Z","size":38837,"stargazers_count":28,"open_issues_count":0,"forks_count":16,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-02-17T00:07:16.616Z","etag":null,"topics":["docker-image","embedded-c","swedishembedded","zephyr"],"latest_commit_sha":null,"homepage":"https://swedishembedded.com/sdk","language":"Emacs Lisp","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/swedishembedded.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":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-08-05T20:57:13.000Z","updated_at":"2026-02-16T16:42:57.000Z","dependencies_parsed_at":"2024-04-25T08:39:30.293Z","dependency_job_id":null,"html_url":"https://github.com/swedishembedded/workstation","commit_stats":null,"previous_names":["swedishembedded/workstation","swedishembedded/develop"],"tags_count":56,"template":false,"template_full_name":null,"purl":"pkg:github/swedishembedded/workstation","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swedishembedded%2Fworkstation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swedishembedded%2Fworkstation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swedishembedded%2Fworkstation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swedishembedded%2Fworkstation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/swedishembedded","download_url":"https://codeload.github.com/swedishembedded/workstation/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/swedishembedded%2Fworkstation/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30278288,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-08T20:45:49.896Z","status":"ssl_error","status_checked_at":"2026-03-08T20:45:49.525Z","response_time":56,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["docker-image","embedded-c","swedishembedded","zephyr"],"created_at":"2024-08-03T01:01:09.527Z","updated_at":"2026-03-09T00:21:13.362Z","avatar_url":"https://github.com/swedishembedded.png","language":"Emacs Lisp","funding_links":[],"categories":["Tools"],"sub_categories":["Build \u0026 Config"],"readme":"# Swedish Embedded Workstation\n\nThis is a complete embedded firmware development workstation based on Linux.\n\n![Demo of developer image](doc/images/demo.gif)\n\n- **Base Image (_ci-base_):** contains only the minimal set of software needed for basic development without the toolchains.\n- **CI Image (_ci_):** contains toolchains, the zephyr sdk and additional packages needed for ci operations.\n- **Developer Image (_zephyr-build_):** includes additional tools that can be useful for Zephyr\n  development.\n- Workstation: a fully integrated development environment with tools for\n  building additional documentation, emacs, vim etc.\n\n**Multi-Architecture Support**: All images support both `linux/amd64` (x86_64) and `linux/arm64` (ARM64/Apple Silicon) architectures. See [ARM Build Guide](ARM_BUILD_GUIDE.md) for details on building for Apple Silicon Macs.\n  \nSee [Documentation](doc/index.rst) for more detailed documentation.\n\nIt includes:\n\n- Zephyr RTOS base tools included as official Zephyr RTOS docker image\n- Docker images: 2 main docker images for CI builds and develop builds.\n- Local bootstrapping scripts\n- Tmux configuration\n- i3wm configuration\n- Vim configuration (see [Awesome Vim](https://swedishembedded.com/insights-vim-in-minutes/) article)\n\n## Quick Start\n\n```\ndocker pull swedishembedded/build:latest\n```\n\n## Docker Compose \n\n\n```\n---\nversion: '3'\nservices:\n  sts:\n    image: swedishembedded/workstation:latest\n    container_name: sts\n    stdin_open: true\n    environment:\n      - TERM\n      - DISPLAY\n    network_mode: host\n    volumes:\n      - ~/.ssh/:/home/user/.ssh\n```\n\nTo start a shell in the newly created environment run:\n\n```\ndocker-compose up -d\ndocker exec -ti sts bash\n```\n\n## Contact\n\n- Community: https://swedishembedded.com/community\n\n```\ndocker run -ti -v $HOME/Work/zephyrproject:/workdir \\\n           docker.io/zephyrprojectrtos/zephyr-build:latest\n```\n\n#### Building Developer Docker Image\n\nThe developer docker image can be built using the following command:\n\n```\ndocker build -f Dockerfile.devel --build-arg UID=$(id -u) --build-arg GID=$(id -g) -t zephyr-build:v\u003ctag\u003e .\n```\n\nIt can be used for building Zephyr samples and tests by mounting the Zephyr workspace into it:\n\n```\ndocker run -ti -v \u003cpath to zephyr workspace\u003e:/workdir zephyr-build:v\u003ctag\u003e\n```\n\n### Usage\n\n#### Building a sample application\n\nFollow the steps below to build and run a sample application:\n\n```\nwest build -b qemu_x86 samples/hello_world\nwest build -t run\n```\n\n#### Building display sample applications\n\nIt is possible to build and run the _native POSIX_ sample applications that produce display outputs\nby connecting to the Docker instance using a VNC client.\n\nIn order to allow the VNC client to connect to the Docker instance, the port 5900 needs to be\nforwarded to the host:\n\n```\ndocker run -ti -p 5900:5900 -v \u003cpath to zephyr workspace\u003e:/workdir zephyr-build:v\u003ctag\u003e\n```\n\nFollow the steps below to build a display sample application for the _native POSIX_ board:\n\n```\nwest build -b native_posix samples/subsys/display/cfb\nwest build -t run\n```\n\nThe application display output can be observed by connecting a VNC client to _localhost_ at the\nport _5900_. The default VNC password is _zephyr_.\n\nOn a Ubuntu host, this can be done by running the following command:\n\n```\nvncviewer localhost:5900\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fswedishembedded%2Fworkstation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fswedishembedded%2Fworkstation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fswedishembedded%2Fworkstation/lists"}