{"id":20438153,"url":"https://github.com/yantis/docker-archlinux-small","last_synced_at":"2025-04-12T22:30:03.487Z","repository":{"id":30088301,"uuid":"33637941","full_name":"yantis/docker-archlinux-small","owner":"yantis","description":"126 MB Docker Container - Arch Linux, ArchAssault, BlackArch, BBQLinux and more.","archived":false,"fork":false,"pushed_at":"2016-10-29T23:42:33.000Z","size":25,"stargazers_count":3,"open_issues_count":0,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-26T16:38:44.200Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/yantis.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}},"created_at":"2015-04-08T23:34:27.000Z","updated_at":"2023-05-01T03:15:50.000Z","dependencies_parsed_at":"2022-08-28T20:01:17.243Z","dependency_job_id":null,"html_url":"https://github.com/yantis/docker-archlinux-small","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/yantis%2Fdocker-archlinux-small","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yantis%2Fdocker-archlinux-small/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yantis%2Fdocker-archlinux-small/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yantis%2Fdocker-archlinux-small/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yantis","download_url":"https://codeload.github.com/yantis/docker-archlinux-small/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248639641,"owners_count":21137882,"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":[],"created_at":"2024-11-15T09:09:29.153Z","updated_at":"2025-04-12T22:30:03.452Z","avatar_url":"https://github.com/yantis.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# archlinux-small\n\nOn Docker hub [archlinux-small](https://registry.hub.docker.com/u/yantis/archlinux-small/)\non Github [docker-archlinux-small](https://github.com/yantis/docker-archlinux-small)\n\nThis small layer adds 27 MB to the 119 MB Arch Linux base container [archlinux-tiny](https://registry.hub.docker.com/u/yantis/archlinux-tiny/)\nStill extremely small compared to other Arch Linux containers with some more features and packages above the tiny one.\nThe goal this was to have a more usable base that just worked without having to install dependencies for normal tasks as well as some normal tools I like working with.\nIt also has some amazing repos like [BlackArch](https://blackarch.org) and [BBQLinux](http://bbqlinux.org).\n\nUpdated: 10/29/2016\n\n### Docker Images Structure\n\u003e[yantis/archlinux-tiny](https://github.com/yantis/docker-archlinux-tiny)\n\u003e\u003e[yantis/archlinux-small](https://github.com/yantis/docker-archlinux-small)\n\u003e\u003e\u003e[yantis/archlinux-small-ssh-hpn](https://github.com/yantis/docker-archlinux-ssh-hpn)\n\u003e\u003e\u003e\u003e[yantis/ssh-hpn-x](https://github.com/yantis/docker-ssh-hpn-x)\n\u003e\u003e\u003e\u003e\u003e[yantis/dynamic-video](https://github.com/yantis/docker-dynamic-video)\n\u003e\u003e\u003e\u003e\u003e\u003e[yantis/virtualgl](https://github.com/yantis/docker-virtualgl)\n\u003e\u003e\u003e\u003e\u003e\u003e\u003e[yantis/wine](https://github.com/yantis/docker-wine)\n\n## Added Features\n* Lots of linux utlities that were not included in the tiny version. See list below.\n* util-linux \u0026 iputils\n* user:docker password:docker with password-less sudo.\n* locate/updatedb (mlocate)\n* [S6 supervisor] (http://skarnet.org/software/s6/) - ([Les Aker's code](https://github.com/amylum/s6))\n* [execline] (http://skarnet.org/software/execline/)\n* [zsh](http://www.zsh.org/) with [oh-my-zsh](https://github.com/robbyrussell/oh-my-zsh) setup for both root and docker users.\n* [htop](http://hisham.hm/htop/)\n* vim ([vim-tiny](http://askubuntu.com/questions/104138/what-features-does-vim-tiny-have))\n\n## Features (from [archlinux-tiny](https://registry.hub.docker.com/u/yantis/archlinux-tiny/))\n* Arch Linux 64 bit core, extra, community repos\n* Arch Linux 32 bit multilib repo\n* [BBQLinux](http://bbqlinux.org) repo for Android Developers.\n* [BlackArch](http://blackarch.org) repo for penetration testers and security professionals.\n* [Arch Linux CN](https://github.com/archlinuxcn) repo \n* [Reflector] (https://wiki.archlinux.org/index.php/Reflector) mirror optimized for western USA.\n* cower and package-query for interacting with the AUR. \n* compact (removal of a lot of unneeded stuff that pacman will auto re-install if needed)\n\n\nAs an example this is a search for chrome with the above repos installed (Screenshot is from April 2015)\n![](http://yantis-scripts.s3.amazonaws.com/screenshot_20150407-030717.jpg)\n\n## Added packages\n* diffutils\n* execline\n* expac\n* file\n* gcc-libs\n* gdbm\n* grep\n* gzip\n* htop\n* iputils\n* less\n* libsystemd\n* lz4\n* mlocate\n* oh-my-zsh-git\n* patch\n* pcre\n* procps-ng-nosystemd\n* s6\n* sed\n* shadow\n* sudo\n* sysfsutils\n* tar\n* util-linux\n* vim-tiny\n* wget\n* zsh\n\n## How did you get it so small.\nThe biggest win was the removal of Perl at 40MB. Perl is needed for two things on the base Arch Linux install\nOpenSSL (it shouldn't be honestly since it isn't really used other than for one small thing on Windows)\nSome other distros have already fixed this [issue] (https://github.com/NixOS/nixpkgs/issues/6763) like NixOS \nAlso, see this [thread](https://bbs.archlinux.org/viewtopic.php?id=73200) and [this](https://bugs.archlinux.org/task/14903).\nAnd for [texinfo](http://www.gnu.org/software/texinfo) (8 MB) which we patched out with a fake stub.\n\nAs well as a lot of aggressively cleaning of info, doc and man pages as well as stripping out the non English international stuff.\n\n## Caveats\nThis is slimmed down as much as possible while still having full pacman functionality to install any package needed.\n\nWhere it might break is all but the English locales have been removed, as well as any terminfo configs that are not xterm based.\nDo not expect any info, documents or manual pages to exist locally either as those have been purged as well.\n\nI am currently experimenting with the removal of zoneinfo and i18n and no problems so far.\n\nAnything you install with pacman should just install fine but if you want to install something from the AUR you are going to need\nto install dev tools first like make, gcc, autoconf etc.\n\n\n## Miscellaneous\n\nTo save on space the pacman databases are purged. You need run pacman -Sy at least once before using pacman.\n\n```bash\nRUN pacman -Sy\n```\n\nIf you are building a package from the AUR you will want to install and uninstall the dev tools like this.\n\n```bash\nRUN sudo pacman -S --noconfirm yaourt binutils gcc make autoconf fakeroot \u0026\u0026 \\\n    yaourt -S --noconfirm procps-ng-nosystemd \u0026\u0026 \\\n    pacman --noconfirm -Rs yaourt binutils gcc make autoconf fakeroot\n```\n\nThis image has a user docker with the password docker. You will most likely want to change the password. Just add this line to your Dockerfile.\n\n```bash\nRUN echo -e \"docker\\nyournewpassword\" | passwd docker\n```\n\nThe mirrors are optimized for US West  If you want it for your area just add this to the top of your Dockerfile.\n\n```bash\nRUN pacman -S reflector --noconfirm \u0026\u0026 \\\n    reflector --verbose -l 5 --protocol https --sort rate --save /etc/pacman.d/mirrorlist \u0026\u0026 \\\n    pacman -Rs reflector --noconfirm\n```\n\nThe different repositories have a lot of really nice packages. To get a list just run package-query like this.\n\n```bash\npackage-query -Sl blackarch\n```\n\n![](http://yantis-scripts.s3.amazonaws.com/screenshot_20150407-023220.jpg)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyantis%2Fdocker-archlinux-small","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyantis%2Fdocker-archlinux-small","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyantis%2Fdocker-archlinux-small/lists"}