devkitPro pacman

From devkitPro
Jump to: navigation, search

devkitPro provided tools and libraries are managed by the rather wonderful Arch Linux pacman. We provide our own binaries as .pkg for OSX and .deb for debian based linux distributions. On Fedora you can obtain pacman using the command sudo dnf install pacman and edit the pacman configuration files as you would for Arch based linux distros , and pre-existing msys2 installs. We also provide an installer for windows which sets up a customised msys2 install already set up with the devkitPro packages.

For Gentoo emerge sys-apps/pacman then edit /etc/pacman.conf and set RootDir = /. Run pacman-key --init then follow the instructions below.

The .deb package can also be used on WSL but you need to make a symlink for /etc/mtab. See https://github.com/Microsoft/WSL/issues/150

   sudo ln -s /proc/self/mounts /etc/mtab

Customising Existing Pacman Install

Note: These instructions are for systems which come with pacman already installed i.e. Arch or Msys2. Do Not follow these instructions if you have dkp-pacman

For users already using a distro which provides pacman please follow these instructions. This also applies to Fedora and Gentoo below as well as users who wish to use an existing msys2 install. If you're using a pre-existing msys2 install or OSX then please also set environment variables as follows :-

   DEVKITPRO=/opt/devkitpro
   DEVKITARM=/opt/devkitpro/devkitARM
   DEVKITPPC=/opt/devkitpro/devkitPPC

First import the key which is used to validate the packages

   sudo pacman-key --recv F7FD5492264BB9D0
   sudo pacman-key --lsign F7FD5492264BB9D0

Add the devkitPro repositories. Please note that you will require two - one for the libraries and another for the host specific tools.

edit /etc/pacman.conf & add these lines

   [dkp-libs]
   Server = https://downloads.devkitpro.org/packages

for linux systems also add

   [dkp-linux]
   Server = https://downloads.devkitpro.org/packages/linux

for existing msys2 systems use this one instead of dkp-linux above.

   [dkp-windows]
   Server = https://downloads.devkitpro.org/packages/windows

install the keyring which adds more keys which may be used to verify the packages.

   sudo pacman -U https://downloads.devkitpro.org/devkitpro-keyring-r1.787e015-2-any.pkg.tar.xz

Now resync the database and update installed packages.

    sudo pacman -Syu

Using Pacman

The customised pacman we ship for OSX and debian based distros is entirely self-contained within /opt/devkitpro/pacman. To avoid polluting the system and avoid clashes with system tools or games which may share the same name as pacman binaries we install helper scripts in /usr/local/bin which temporarily set path and forward to the custom binaries. This means you substitute dkp-pacman for pacman on those systems.

Updating Databases

To resync the databases before obtaining updates, this command is similar to apt-get update

   sudo (dkp-)pacman -Sy

To update installed packages, this command is similar to apt-get upgrade

   sudo (dkp-)pacman -Syu

Installing packages

You can list all available packages with

   (dkp)-pacman -Sl

To show only the libraries supplied by devkitPro append dkp-libs

   (dkp-)pacman -Sl dkp-libs

Predefined Groups

We provide several convenient groups which may be installed using sudo (dkp-)pacman -S <group name>

- gp32-dev
- gba-dev 
- nds-dev
- 3ds-dev
- wii-dev
- gamecube-dev
- switch-dev

To list packages use `dkp-pacman -Sl` To install a package use `sudo dkp-pacman -S <name of package>` `sudo dkp-pacman -R <name of package>` will remove an already installed package.