https://github.com/sheepjin99/AUR_ttf-proggy-vector
아치리눅스는 타 리눅스와 다르게 pacman 이라는 공식 저장소와 AUR(Arch linux User Repository)라는 서드파티 저장소가 있습니다. 보통 필수적인 프로그램은 pacman에서 받으면 되지만, 기타 어플리케이션들은 사용자들이 아치리눅스에 맞게 다시 짜서 AUR을 통해 다운로드, 설치하게 됩니다.
AUR은 간단한 구조로 돌아가는데, 일단 원본 프로그램 소스를 다운받고, 압축을 해제한 후 PKGBUILD라는 파일을 통해 쉘 스크립트가 돌아가면서 fakeroot에 들어가 설치를 하게 됩니다. 이와같은 이유때문에 AUR helper (yaourt, yay)를 쓸때는 루트권한으로 실행하면 안됩니다.
저는 AUR을 공부하기 위해, 개인적으로 좋아하는 폰트인 Proggy Font중, 2019년에 새로 나온 Proggy Font Vector를 리눅스에 설치해주는 패키지를 만들어보았습니다. Proggy Font는 monospaced, fixed-width의 C, C++ 언어에 최적화된 폰트입니다.
bluescan/proggyfonts
Monospaced fonts for programming. Contribute to bluescan/proggyfonts development by creating an account on GitHub.
github.com
PKGBUILD를 작성하는 방법은 아치 위키에 자세하게 설명되어 있고, 정해진 룰이 있으므로 꼭!! 정독하시고 작성해보는 것을 추천합니다(Read The Fuxking Manual)......하지만 저는 매뉴얼을 별로 좋아하지 않기에, (AUR에 올린다음에 읽었습니다ㅎ) 다른 사람들이 만들어놓은 폰트 설치 AUR 패키지를 참고하여(ttf-D2Coding, ttf-neodgm) 맨땅헤딩으로 만들었습니다. 쉘 스크립트 하나도 몰랐는데 워낙 폰트를 설치하는 과정자체가 쉬워서 어렵지 않았습니다.
이후 makepkg 명령어를 통해 잘 설치되는지 확인한 후, AUR에 올려야 됩니다.
https://aur.archlinux.org/에 들어가 어카운트를 만들고, 본인 컴퓨터에서 ssh-keygen 명령어를 통해 SSH Public Key를 만들고 AUR 홈페이지 - My Account에 추가해줍니다.
이후 git clone ssh://aur@aur.archlinux.org/<패키지 이름>.git으로 클론을 떠주고, 그 위치에 아까 만든 PKGBUILD와 기타 파일을 넣어줍니다.
그 이후
~ git add .
~ git commit -m "<커밋 내용>"
~ git push
를 해주면 AUR에 등록이 되고, 모든 아치 리눅스에서 접근할 수 있게 됩니다!
https://aur.archlinux.org/packages/ttf-proggy-vector/
AUR (en) - ttf-proggy-vector
Enter search criteria Search by Name, Description Name Only Package Base Exact Name Exact Package Base Keywords Maintainer Co-maintainer Maintainer, Co-maintainer Submitter Keywords Out of Date All Flagged Not Flagged Sort by Name Votes Popularity Voted No
aur.archlinux.org
이런식으로요!
다음번에는 macOS에서 사용하는 홈브류용 패키지를 만들어볼까 생각중입니다. 읽느라 고생많으셨습니다 ㅎㅎ
'소프트웨어 > Linux' 카테고리의 다른 글
우주최강 다국어 입력기 프레임워크 "nimf" 만자로 리눅스에 설치하기 (0) | 2020.02.14 |
---|---|
[KDE] 프로그램을 깔았는데 프로그램을 찾을 수 없는 경우 (0) | 2020.02.12 |
[i3] i3 WM(Window Manager) 설치해보기 (0) | 2020.02.07 |
CLion을 학생 라이센스로 사용해보자! (JetBrains Products for Learning) (0) | 2020.01.06 |