wtorek, 13 marca 2018

Wiadomości z POLAUR - amarok-git

Kiedy powstawał nasz PKGBUILD dla aplikacji amarok w wersji budowanej bezpośrednio z GIT w AUR były dwie paczki: amarok-git oraz amarok-kf5-git. Obecnie jest już jedna - wyłącznie amarok-git.
Wprowadzając naszą wersję kierowałem się głównie tym, że ani jedna, ani druga paczka z AUR nie umożliwiała zbudowania aplikacji. U źródeł leżał fakt, że obie powstawały jeszcze, gdy amarok był aplikacją KDE4, choć w GIT posiadającą swoją własną gałęź kf5 budowaną już w oparciu o KDE Frameworks 5. W ten sposób istniał amarok-git budowany z gałęzi głównej (master) na podstawie bibliotek KDE4 oraz amarok-kf5-git, który budowany był na podstawie KF5 z gałęzi kf5. To wszystko stało się przeszłością z chwilą opublikowania ostatniego wydania amaroka budowanego na podstawie KDE4, czyli wersji 2.9. Wkrótce gałąź kf5 zastąpiła master. W ten sposób próba budowy amarok-git kończyła się niepowodzeniem ze względu na niespełnione zależności, a przy próbie budowy amarok-kf5-git uzyskiwaliśmy informację o braku źródeł.
Publikując zatem amarok-git w wersji POLAUR stwierdziłem, że stan to przejściowy, umożliwiający jedynie do czasu wyprostowania się sytuacji w AUR na budowę aktualnej wersji amaroka wprost z GIT w oparciu o KF5. W zamiarze było też usunięcie go jak tylko rozwiązanie tej sytuacji się pojawi.
W istocie - 3 dni temu z AUR zniknęło amarok-kf5-git, pozostało natomiast amarok-git budowane z obecnej gałęzi master, czyli z wykorzystaniem bibliotek KF5. Jak to określa changelog - nastąpiło połączenie amarok-git z amarok-kf5-git. Z POLAUR jednak amarok-git nie zniknął. Przynajmniej na razie.
Dlaczego?
Otóż przygotowany obecnie PKGBUILD obecnej wersji amarok-git w AUR jest moim zdaniem wadliwy. Autor obecnej wersji dokonał bowiem automatycznego przeniesienia zależności wymaganych do budowy starego amarok-kf5-git do obecnej wersji kompletnie nie zauważając, że zależności określone w CMakeLists.txt uległy zmianie w stosunku do czasów, kiedy budowało się amarok-kf5-git. Obecne zależności amarok-git z AUR są albo zbędne (np. kdelibs4support), albo nie zostały uwzględnione (np. kirigami2).
Postanowiłem zatem, że do czasu poprawienia PKGBUILDu w POLAUR będzie funkcjonowała nasza wersja. Nie bardzo chciałbym wprowadzać dla niej jakąś inną nazwę - wszak amarok-git jest nazwą prawidłową, zgodną z zasadami Arch Linux. Jeśli zatem jej nie zmienię, to uczulam, że decydując się na budowę z naszego PKGBUILDu (nota bene ulegnie on pewnej przebudowie w niedalekim czasie) musicie konsekwentnie go stosować i jednocześnie nie używać różnego rodzaju aurhelperów do aktualizacji paczek z AUR lub samego amarok-git, albowiem w ten sposób dostaniecie paczkę wprawdzie prawdopodobnie prawidłową, jednakże ze złymi zależnościami, co w efekcie prowadzić może to przypadkowego usunięcia którejś z zależności, a w efekcie program przestanie działać. Zbudowany natomiast zostanie wyłącznie dlatego, że umożliwi to wcześniejsza budowa naszej paczki.