Jak zainstalować Yay na czystym obrazie Dockera Arch Linux
Instalacja yay wymaga kilku kroków, takich jak tworzenie użytkownika, instalacja base-devel i git, zmiana w /etc/sudoers, klonowanie repozytorium yay i uruchomienie makepkg na nim. Ten post opisuje ten proces krok po kroku.
Daniel Gustaw
• 3 min read
W tym artykule przeprowadzimy Cię przez proces instalacji pomocnika AUR yay na czystym obrazie Dockera Arch Linux. Yay to popularne, przyjazne dla użytkownika narzędzie do zarządzania pakietami z Arch User Repository (AUR). Instalacja yay na obrazie Dockera Arch Linux może pomóc w uproszczeniu zarządzania pakietami i utrzymaniu aplikacji w kontenerach na bieżąco.

Przygotowanie obrazu Docker Arch Linux
Najpierw uruchom nowy kontener Docker Arch Linux, wykonując następujące polecenie:
docker run --rm -it archlinux
To polecenie pobierze najnowszy obraz Arch Linux (jeśli jeszcze go nie masz) i rozpocznie interaktywną sesję kontenera.
Aktualizacja systemu i instalacja zależności
Przed instalacją yay upewnij się, że twój kontener Arch Linux jest aktualny i ma zainstalowane wymagane zależności. Zaktualizuj system i zainstaluj base-devel oraz git za pomocą następującego polecenia:
pacman -Syu --noconfirm && pacman -S --noconfirm base-devel git
base-devel zawiera niezbędne narzędzia do budowania pakietów, podczas gdy git pozwala na sklonowanie repozytorium yay.
Tworzenie Tymczasowego Katalogu Budowy
Aby zbudować i zainstalować yay, potrzebujesz tymczasowego katalogu. Stwórz katalog o nazwie /tmp/yay-build i zmień jego właściciela na nowego użytkownika builder za pomocą tych poleceń:
mkdir -p /tmp/yay-build
useradd -m -G wheel builder && passwd -d builder
chown -R builder:builder /tmp/yay-build
Przyznawanie uprawnień Sudo
Pozwól użytkownikowi builder używać sudo bez hasła, dodając wpis w pliku /etc/sudoers:
echo 'builder ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers
Klonowanie repozytorium Yay
Jako użytkownik builder sklonuj repozytorium yay do katalogu /tmp/yay-build:
su - builder -c "git clone https://aur.archlinux.org/yay.git /tmp/yay-build/yay"
Budowanie i instalowanie Yay
Teraz zbuduj i zainstaluj yay używając polecenia makepkg:
su - builder -c "cd /tmp/yay-build/yay && makepkg -si --noconfirm"
To polecenie zbuduje i zainstaluje yay bez pytania o potwierdzenie.
Porządkowanie
Po pomyślnym zainstalowaniu yay usuń tymczasowy katalog budowania:
rm -rf /tmp/yay-build
Pomyślnie zainstalowałeś yay na czystym obrazie Dockera Arch Linux. Po zainstalowaniu yay możesz teraz łatwo zarządzać pakietami AUR w swoim kontenerze Arch Linux. Może to być szczególnie przydatne dla programistów i administratorów systemów, którzy używają Arch Linux i Dockera do swoich aplikacji i usług.
Sprawdźmy, czy działa na przykładzie gpt-cli
Przełączymy się na użytkownika builder
su - builder
i zainstaluj pierwszą paczkę. Na przykład
yay -S gpt-cli

Pozwala to na rekomendowanie ci poleceń linuxowych za pomocą API openai z modelem gpt-3.5-turbo. Możesz to przetestować, wpisując:
GPT3_API_KEY="sk-xxx" p perl onliner that will show first 10 fibonacci sequence elements
zobaczysz informacje, że skrypt przedstawiony poniżej został skopiowany do twojego schowka
perl -e 'sub f{ $_[0] < 2 ? $_[0] : f($_[0]-1) + f($_[0]-2) }; foreach(0..9){ print f($_), "\n"; }'

Możesz przeczytać pełną dokumentację gpt-cli na githubie.
Mam nadzieję, że ten wpis na blogu pomoże ci w zainstalowaniu yay na obrazie dockera arch.
Other articles
You can find interesting also.
Przykłady zastosowania LangChain
Ekstrakcja uporządkowanych danych z faktur PDF i budowanie elastycznego systemu wyszukiwania dokumentów z LangChain i FAISS.
Daniel Gustaw
• 7 min read
Aplikacja z FOSUserBundle i API Google Maps
Prosta apka integrująca fos user bundle z google maps. Serwis pozwala na logowanie, rejestrację oraz zapisywanie swojej listy lokalizacji walidowanych przez api od google.
Daniel Gustaw
• 45 min read
Wybrane składnie w JavaScript ES2020, ES2021 i ES2022
Nullish coalescing, Opcjonalne łańcuchowanie, Proxies, Pola prywatne, allSettled, BigInt, Dynamiczny import, replaceAll, Separatorzy numeryczni, matchAll, Przypisanie logiczne, Await na najwyższym poziomie
Daniel Gustaw
• 19 min read