{"id":21735208,"url":"https://github.com/sdr-enthusiasts/buster-docker-fixes","last_synced_at":"2025-07-11T10:40:41.832Z","repository":{"id":43673251,"uuid":"450316508","full_name":"sdr-enthusiasts/Buster-Docker-Fixes","owner":"sdr-enthusiasts","description":"Script to fix Docker issues with old libsecomp2 on 32 Bit Buster systems","archived":false,"fork":false,"pushed_at":"2023-12-02T14:59:28.000Z","size":46,"stargazers_count":19,"open_issues_count":1,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-12T22:57:40.042Z","etag":null,"topics":["buster","debian","docker","raspberry-pi","raspbian"],"latest_commit_sha":null,"homepage":"","language":"Shell","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/sdr-enthusiasts.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":"2022-01-21T01:39:24.000Z","updated_at":"2025-02-11T10:51:48.000Z","dependencies_parsed_at":"2023-12-02T15:44:19.105Z","dependency_job_id":null,"html_url":"https://github.com/sdr-enthusiasts/Buster-Docker-Fixes","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sdr-enthusiasts%2FBuster-Docker-Fixes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sdr-enthusiasts%2FBuster-Docker-Fixes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sdr-enthusiasts%2FBuster-Docker-Fixes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sdr-enthusiasts%2FBuster-Docker-Fixes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sdr-enthusiasts","download_url":"https://codeload.github.com/sdr-enthusiasts/Buster-Docker-Fixes/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248654030,"owners_count":21140235,"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":["buster","debian","docker","raspberry-pi","raspbian"],"created_at":"2024-11-26T05:12:22.647Z","updated_at":"2025-04-13T01:52:13.837Z","avatar_url":"https://github.com/sdr-enthusiasts.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Buster (and Stretch) Docker Fixes\n\u003cimg source=\"https://raw.githubusercontent.com/sdr-enthusiasts/sdr-enthusiast-assets/main/SDR%20Enthusiasts.svg\" height=\"200\"\u003e\n\n## The situation\n\nUsers running Debian \"Stretch\" or \"Buster\"-based operating systems (e.g., Raspbian/Raspberry Pi OS 1.3) on ARM hardware (e.g., Raspberry Pi) may have issues running certain Docker containers.\n\nNewer Docker containers can be based on Debian \"Bullseye\", the latest stable branch of Debian Linux. Newer versions of Linux are generally better maintained and receive timely bug fixes and security updates for installed packages.\n\n## The problem\n\nUsers of older \"Stretch\" or \"Buster\" based ARM systems may experience problems running \"Bullseye\" based Docker Containers. For example, you may see errors in the logs indicating issues such as:\n\n* With the `RTC`\n* `Real Time Clock`\n* Any odd error message that may have the word `Time` in it\n* Or be otherwise related to the clock.\n\nThis is an example of such error message:\n\n```\nsleep: cannot read realtime clock: Operation not permitted\n```\n\nThe issue with \"Buster\" systems is related to a system package called `libseccomp2`. \"Bullseye\" Docker containers require a more up-to-date `libseccomp2` than is typically available on these older systems.\n\n## How to fix this\n\n### ~~Four~~ Three options to fix\nYou have ~~four~~ three options to ensure this container will work on your Pi.\n\n1. Update `libseccomp2` in your operating system\n2. Update to a fresh install of Raspberry Pi OS 1.4 (Debian \"Bullseye\"-based), or an install of Raspberry Pi OS from an image made after November 2021\n3. Upgrade to Ubuntu ARM 64 bit\n4. ~~Run this container with the `privileged` flag.~~ **SECURITY ISSUE: NOT RECOMMENDED, PLEASE DO NOT DO THIS**\n\n### Our recommendation\nThe easiest solution is option 1: update `libseccomp2` in your operating system. [KX1T](https://github.com/kx1t) has created a [script](libseccomp2-checker.sh) that you can run. It will check that your system is \"Buster\" based and install an updated version of `libseccomp2` only if required and available.\n\nIf you are unsure if your system may be affected you can also run this script. The script is designed to only run on systems it knows will have the problem and we can safely apply a fix.\n\nTo run this script, which only needs to be done once, please do the following:\n\n```shell\ncurl -sL https://raw.githubusercontent.com/sdr-enthusiasts/Buster-Docker-Fixes/main/libseccomp2-checker.sh | bash\n```\n\nAfter updating `libseccomp2`, you may have to restart your containers to ensure they run properly.\n\n### What does the script do?\n\nThe script will only work on \"Stretch\" or \"Buster\"-based Debian distributions and will only update `libseccomp2` if it is outdated.\nThe `libseccomp2` script will do the following things to your system:\n\n* Determine if your system is buster based, and if not, stop\n* Update your system packages and install `w3m` (needed to parse some HTML data for Stretch OS fixes)\n* If the script determines `libseccomp2` is outdated, it will then do the following after you give it permission to continue:\n  - Add an official Debian repository to your apt sources along with the associated GPG key\n  - Install a new version of `libseccomp2`\n\nYou may be prompted for a password because the script is modifying things that require escalated (`sudo`) privileges.\nFeel free to inspect the script [here](libseccomp2-checker.sh).\n\nFinally -- if you have a very old OS, the script may error out with the message below. In that case, first do `sudo apt update \u0026\u0026 sudo apt upgrade` and follow the instructions. Once done, run the script again.\n```\nE: Repository 'http://archive.raspberrypi.org/debian buster InRelease' changed its 'Suite' value from 'stable' to 'oldstable'\nN: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.\n```\n\n## LICENSE\nThis repository, including any scripts, data, SDKs, and documentation is subject to the MIT License, [included](LICENSE) with this package. Copyright (c) 2021, 2022 by Ramon F. Kolb (kx1t), Fred Clausen, Mike Nye, and others.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsdr-enthusiasts%2Fbuster-docker-fixes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsdr-enthusiasts%2Fbuster-docker-fixes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsdr-enthusiasts%2Fbuster-docker-fixes/lists"}