====== ACM Arch Linux Repo ======
====== What is is? ======
The ACM custom repo is a local package repository for internal ACM packages. One example being the [[linux:lxdm_login_theming_setup|LXDM themes]] used by the ACM/LUG workstations.
It currently only supports packages with arch type "any".
The PKGBUILDs and files are stored in a git repo on the ACM system.
https://acm.cs.uic.edu/git/sig-sysadmin/acm-packages
====== Client Side ======
===== Arch Linux =====
Add the mirror to the workstations pacman config
[uicacm]
SigLevel = Optional TrustAll
Server = http://mozart.acm.cs/acm-packages/archlinux/
then sync the repo DB
pacman -Sy
====== Server Side ======
Currently the repo is hosted on mozart.acm.cs
The files are located under the standard archlinux http root /srv/http
Clone the repo and build the packages with makepkg. All the current version symlinks should be in place, but double check if you have updated a version.
For more information read the Arch Linux pages on custom repos and PKGBUILDs
[[https://wiki.archlinux.org/index.php/PKGBUILD]]
[[https://wiki.archlinux.org/index.php/Pacman_tips#Custom_local_repository]]
===== Updating A Package =====
- Push updated files to the acm-packages git repo (don't forget to update the PKGBUILD md5sums for the files)
- Log into mozart.acm.cs and go to /srv/http/acm-packages
- Run "sudo su http -s /bin/bash"
- Run "git pull origin master"
- Enter a username and password to access the git repo
- Navigate to the directory with the updated package
- Run "makepkg" to generate the new pkg.tar.gz file
- Navigate one directory up to the "archlinux" directory of the repo
- Create a symbolic link to the new package file in this directory "ln -s / "
- Run "repo-add uicacm.db.tar.gz "
- Done