Skip to content

#2007: Support Docker on Arch Linux with pacman and yay#2083

Open
laert-ll wants to merge 6 commits into
devonfw:mainfrom
laert-ll:feature/2007-docker-arch-linux
Open

#2007: Support Docker on Arch Linux with pacman and yay#2083
laert-ll wants to merge 6 commits into
devonfw:mainfrom
laert-ll:feature/2007-docker-arch-linux

Conversation

@laert-ll

@laert-ll laert-ll commented Jun 29, 2026

Copy link
Copy Markdown
Contributor

This PR fixes #2007

Implemented changes:

  • Added pacman to NativePackageManager
  • Used yay as installer for docker

Clarification: rancher-desktop (the open source alternative of docker used in IDEasy) is not part of the Arch Linux official repositories, therefore it has to be downloaded from the AUR. Given the abundance of AUR helpers, we chose yay given it's considered the most used and popular tool for managing AUR packages.


Testing instructions

Please add conscise, understandable instructions on how a reviewer can test/verify the functionality of your contribution here:

  1. Have a working Arch Linux environment with yay installed (for Windows users, Arch Linux is offered by WSL as well).
  2. Run "ide install docker" and verify that rancher-desktop is installed successfully.
  3. Run rancher-desktop in your shell or open it from the application menu and verify that it runs sucessfully.
  4. Run "ide uninstall docker" and verify that rancher-desktop is uninstalled successfully.

Clarification: currently ide docker will not work due to a known issue (see #854) and will be resolved in another PR.


Checklist for this PR

Make sure everything is checked before merging this PR. For further info please also see
our DoD.

  • When running mvn clean test locally all tests pass and build is successful
  • PR title is of the form #«issue-id»: «brief summary» (e.g. #921: fixed setup.bat). If no issue ID exists, title only.
  • PR top-level comment summarizes what has been done and contains link to addressed issue(s)
  • PR and issue(s) have suitable labels
  • Issue is set to In Progress and assigned to you or there is no issue (might happen for very small PRs)
  • You followed all coding conventions
  • You have added the issue implemented by your PR in CHANGELOG.adoc unless issue is labeled
    with internal
  • You have formulated clear instructions on how to test your contribution under "Testing instructions"

@coveralls

coveralls commented Jun 29, 2026

Copy link
Copy Markdown
Collaborator

Coverage Report for CI Build 29021818813

Coverage increased (+0.04%) to 72.268%

Details

  • Coverage increased (+0.04%) from the base build.
  • Patch coverage: No coverable lines changed in this PR.
  • 29 coverage regressions across 3 files.

Uncovered Changes

No uncovered changes found.

Coverage Regressions

29 previously-covered lines in 3 files lost coverage.

File Lines Losing Coverage Coverage
com/devonfw/tools/ide/tool/docker/Docker.java 26 5.56%
com/devonfw/tools/ide/version/VersionSegment.java 2 90.55%
com/devonfw/tools/ide/tool/ide/IdeToolCommandlet.java 1 78.33%

Coverage Stats

Coverage Status
Relevant Lines: 16716
Covered Lines: 12587
Line Coverage: 75.3%
Relevant Branches: 7462
Covered Branches: 4886
Branch Coverage: 65.48%
Branches in Coverage %: Yes
Coverage Strength: 3.19 hits per line

💛 - Coveralls

@laert-ll laert-ll moved this from 🆕 New to Team Review in IDEasy board Jun 29, 2026
@laert-ll laert-ll marked this pull request as ready for review June 29, 2026 05:59
@laert-ll laert-ll self-assigned this Jun 29, 2026
@laert-ll laert-ll added docker docker and esp. DockerDesktop rancher Rancher-Desktop linux specific for linux OS (debian, ubunutu, suse, etc.) install installation process of IDE + tools and install commandlet labels Jun 29, 2026
@laert-ll laert-ll force-pushed the feature/2007-docker-arch-linux branch from e4117a0 to 9fda800 Compare June 29, 2026 13:43
@laert-ll laert-ll force-pushed the feature/2007-docker-arch-linux branch from 87c9f75 to b4b5d64 Compare July 8, 2026 13:17
@hohwille

hohwille commented Jul 9, 2026

Copy link
Copy Markdown
Member

Anh will do the team review.

@laert-ll

laert-ll commented Jul 9, 2026

Copy link
Copy Markdown
Contributor Author

Since this is a bit tricky to test in WSL, I wrote down some instructions that worked for me locally.

wsl --install
wsl --install archlinux
passwd
useradd -m -G wheel <username>
passwd <username>
pacman -Syu sudo nano git base-devel go
EDITOR=nano visudo
(ungefähr am Ende der Datei soll man das hier auskommentieren, also das Zeichen # entfernen: %wheel ALL=(ALL:ALL) ALL)
Ctrl+o
Enter
Ctrl+x
git clone https://github.com/Jguer/yay.git
cd yay
make
sudo make install
cd ..
bash -c "$(curl -fsSL https://raw.githubusercontent.com/devonfw/IDEasy/main/install.sh)"
source ~/.bashrc
cd projects
ide create IDEasy
cd workspaces/main
git clone https://github.com/laert-ll/IDEasy.git
cd IDEasy
git fetch --all
git checkout feature/2007-docker-arch-linux
ide mvn clean install -pl '!documentation,!gui'
cd cli
ide mvn exec:exec -Dexec.executable="java" -Dexec.args="-cp %classpath com.devonfw.tools.ide.cli.Ideasy docker"

@hohwille if you think this might be useful in the future, I would also be willing to write this down as a more elaborate archlinux specific documentation.

@QuangAnhLe

QuangAnhLe commented Jul 9, 2026

Copy link
Copy Markdown

When I test on the Capgemini laptop, I get an error: request failed: Get "https://aur.archlinux.org/rpc?arg%5B%5D=rancher-desktop&type=info&v=5": tls: failed to verify certificate: x509: certificate signed by unknown authority.

yay -S --needed --noconfirm rancher-desktop
This will require root permissions!
 -> Avoid running yay as root/sudo.
 -**> request failed: Get "https://aur.archlinux.org/rpc?arg%5B%5D=rancher-desktop&type=info&v=5": tls: failed to verify certificate: x509: certificate signed by unknown authority**
 -> Failed to find AUR package for rancher-desktop:request failed: Get "https://aur.archlinux.org/rpc?arg=rancher-desktop&by=provides&type=search&v=5": tls: failed to verify certificate: x509: certificate signed by unknown authority
 -> No AUR package found for rancher-desktop
 -> no package found for targets
Running command '/usr/sbin/bash' with arguments '-c' 'yay -S --needed --noconfirm rancher-desktop'
failed with exit code 1!
yay -S --needed --noconfirm rancher-desktop command did not execute successfully
Cannot set executable flag on file that does not exist: docker
Logfile can be found at /root/projects/_ide/logs/2026/07/09/IDEasy-ide-docker-15-31-07.log
An unexpected error occurred!
We are sorry for the inconvenience.
Please check the error below, resolve it and try again.
If the error is not on your end (network connectivity, lack of permissions, etc.) please file a bug:
https://github.com/devonfw/IDEasy/issues/new?template=bug_report.yml&title=IllegalStateException%3A+Running+command+%27docker%27+failed%3A+Cannot+run+program+%22docker%22%3A+Exec+failed%2C+error%3A+2+%28No+such+file+or+directory%29+
java.lang.IllegalStateException: Running command 'docker' failed: Cannot run program "docker": Exec failed, error: 2 (No such file or directory)
        at com.devonfw.tools.ide.process.ProcessContextImpl.run(ProcessContextImpl.java:260)
        at com.devonfw.tools.ide.tool.ToolCommandlet.runTool(ToolCommandlet.java:293)
        at com.devonfw.tools.ide.tool.ToolCommandlet.runTool(ToolCommandlet.java:277)
        at com.devonfw.tools.ide.tool.ToolCommandlet.runTool(ToolCommandlet.java:256)
        at com.devonfw.tools.ide.tool.ToolCommandlet.runTool(ToolCommandlet.java:235)
        at com.devonfw.tools.ide.tool.ToolCommandlet.runTool(ToolCommandlet.java:221)
        at com.devonfw.tools.ide.tool.ToolCommandlet.doRun(ToolCommandlet.java:211)
        at com.devonfw.tools.ide.commandlet.Commandlet.run(Commandlet.java:232)
        at com.devonfw.tools.ide.context.AbstractIdeContext.applyAndRun(AbstractIdeContext.java:1402)
        at com.devonfw.tools.ide.context.AbstractIdeContext.run(AbstractIdeContext.java:1187)
        at com.devonfw.tools.ide.cli.Ideasy.runOrThrow(Ideasy.java:92)
        at com.devonfw.tools.ide.cli.Ideasy.run(Ideasy.java:56)
        at com.devonfw.tools.ide.cli.Ideasy.main(Ideasy.java:138)
Caused by: java.io.IOException: Cannot run program "docker": Exec failed, error: 2 (No such file or directory)
        at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1112)
        at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1046)
        at com.devonfw.tools.ide.process.ProcessContextImpl.run(ProcessContextImpl.java:213)
        ... 12 more
Caused by: java.io.IOException: Exec failed, error: 2 (No such file or directory)
        at java.base/java.lang.ProcessImpl.forkAndExec(Native Method)
        at java.base/java.lang.ProcessImpl.<init>(ProcessImpl.java:300)
        at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:231)
        at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1078)
        ... 14 more

@laert-ll

laert-ll commented Jul 9, 2026

Copy link
Copy Markdown
Contributor Author

This confirms that the installer reaches the yay command:

Running command '/usr/sbin/bash' with arguments '-c' 'yay -S --needed --noconfirm rancher-desktop'

Which is the desired outcome, however ZScaler blocks IDEasy from reaching https://aur.archlinux.org to actually download the package:

 -> request failed: Get "https://aur.archlinux.org/rpc?arg%5B%5D=rancher-desktop&type=info&v=5": tls: failed to verify certificate: x509: certificate signed by unknown authority
 -> Failed to find AUR package for rancher-desktop:request failed: Get "https://aur.archlinux.org/rpc?arg=rancher-desktop&by=provides&type=search&v=5": tls: failed to verify certificate: x509: certificate signed by unknown authority

I tried running fix-vpn-tls-problem to avoid this but it doesn't work. Nonetheless, after testing it on my private laptop with native archlinux, this did not present to be a problem and the installation works fine. Thus I would consider this issue ready for review.

@laert-ll laert-ll requested a review from hohwille July 9, 2026 15:15
@laert-ll laert-ll moved this from Team Review to 👀 In review in IDEasy board Jul 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docker docker and esp. DockerDesktop install installation process of IDE + tools and install commandlet linux specific for linux OS (debian, ubunutu, suse, etc.) rancher Rancher-Desktop

Projects

Status: 👀 In review

Development

Successfully merging this pull request may close these issues.

IDEasy can not install docker on arch linux

4 participants