-
-
Notifications
You must be signed in to change notification settings - Fork 344
Installing CKAN on Arch
DasSkelett edited this page Jun 8, 2021
·
28 revisions
CKAN is available in the AUR: https://aur.archlinux.org/packages/ckan/
- Make sure your system is up to date:
sudo pacman -Syu
- Install Mono:
sudo pacman -S mono
- Arch's msbuild is currently broken (May 2021), so you should download and run the prebuilt ckan.exe file from the CKAN release page. However, if you really want to build CKAN the Arch way, keep reading for tips on how to repair your msbuild.
- If you haven't already, install
base-devel
andgit
so you can access packages in the Arch User Repository:sudo pacman -S --needed base-devel git
- Install msbuild:
sudo pacman -S msbuild
- Copy
System.Reflection.Metadata.dll
from the .deb package provided by mono-project.com (Arch's copy is too old for msbuild):mkdir -p /tmp/mono-deb cd /tmp/mono-deb FILE=$(curl --silent https://download.mono-project.com/repo/ubuntu/dists/preview-focal/main/binary-amd64/Packages | grep -Po "(?<=Filename: ).+mono-roslyn.+\\.deb") curl https://download.mono-project.com/repo/ubuntu/${FILE} > mono.deb ar p mono.deb data.tar.xz | tar xJf - ./usr/lib/mono/4.5/System.Reflection.Metadata.dll --strip-components 5 sudo mv /usr/lib/mono/4.5/System.Reflection.Metadata.dll /usr/lib/mono/4.5/System.Reflection.Metadata.dll_OLD sudo cp System.Reflection.Metadata.dll /usr/lib/mono/4.5
- Get the CKAN AUR package and build it:
mkdir -p ~/builds cd ~/builds git clone https://aur.archlinux.org/ckan.git cd ckan makepkg
- Install the package you built:
sudo pacman -U ckan*.zst
This will add CKAN to your system application menus, so you can run it from there.
If you download the ckan.exe
file from our release page, run it with:
mono ckan.exe
Accompanied by Mono.Unix.UnixIOException: Resource temporarily unavailable
(visible when running ckan in terminal).
This is due to safe limits of open file desriptors (default 1024) per user being too low for ckan to download concurently. Can be temporary fixed by:
ulimit -s 32768
ulimit -n 10240
And then running ckan in the same terminal session.
You can also permanently change the limits according to https://wiki.archlinux.org/index.php/Limits.conf
Contact us on the KSP forum or on our Discord server