Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.





Cenzor wirtualnego świata
Przeglądając sobie pakiety na archu, dostrzegłem coś o nazwie amarok-minimal — https://aur.archlinux.org/packages/amarok-minimal/ . Skoro oni mogą mieć okrojonego amaroka, to na debianie ja też mogę. I tak zaczołem się zastanawiać jak go okroić. Domyślnie on ma w zależnościach:
amarok-common (= 2.8.0-2), amarok-utils (= 2.8.0-2), kde-runtime (>> 4:4.10), libaio1 (>= 0.3.93), libavcodec54 (>= 6:9.1-1) | libavcodec-extra-54 (>= 6:9.10), libavformat54 (>= 6:9.1-1), libavutil52 (>= 6:9.1-1), libc6 (>= 2.17), libcurl3-gnutls (>= 7.16.2), libgcrypt11 (>= 1.4.5), libgdk-pixbuf2.0-0 (>= 2.22.0), libgl1-mesa-glx | libgl1, libglib2.0-0 (>= 2.14.0), libgpod4-nogtk (>= 0.7.92) | libgpod4 (>= 0.7.92), libkcmutils4 (>= 4:4.8.4), libkdecore5 (>= 4:4.8.4), libkdeui5 (>= 4:4.10.0), libkdewebkit5 (>= 4:4.8.4), libkdnssd4 (>= 4:4.8.4), libkfile4 (>= 4:4.8.4), libkio5 (>= 4:4.8.4), libknewstuff3-4 (>= 4:4.8.4), liblastfm1 (>= 1.0.0), libloudmouth1-0 (>= 1.1.4), libmtp9 (>= 1.1.0), libmysqlclient18 (>= 5.5.24+dfsg-1), libnepomukcore4 (>= 4:4.9.3), libofa0 (>= 0.9.3), libphonon4 (>= 4:4.6.0really4.3.80), libplasma3 (>= 4:4.8.4), libqjson0 (>= 0.7.1), libqt4-dbus (>= 4:4.6.1), libqt4-network (>= 4:4.5.3), libqt4-opengl (>= 4:4.8.0), libqt4-script (>= 4:4.5.3), libqt4-sql (>= 4:4.5.3), libqt4-svg (>= 4:4.5.3), libqt4-xml (>= 4:4.5.3), libqtcore4 (>= 4:4.8.0), libqtgui4 (>= 4:4.8.0), libqtwebkit4 (>= 2.1.0~2011week13), libsolid4 (>= 4:4.8.4), libsoprano4 (>= 2.1.67), libstdc++6 (>= 4.4.0), libthreadweaver4 (>= 4:4.8.4), libx11-6, libxml2 (>= 2.7.4), phonon, zlib1g (>= 1:1.2.0), libqtscript4-core, libqtscript4-gui, libqtscript4-network, libqtscript4-xml, libqtscript4-sql, libqtscript4-uitools
Pobrałem źródła z repo i próbowałem coś wyskrobać z pliku debian/control . Pousuwałem z build dep to co miało w nazwie coś znajomego i to czego nie miałem zamiaru używać. Obecnie on wygląda:
Source: amarok
Section: sound
Priority: optional
Maintainer: Mikhail Morfikov <morfikov@gmail.com>
Build-Depends: debhelper (>= 9),
cmake (>= 2.6.2),
pkg-kde-tools (>= 0.5),
libtag1-dev (>= 1.8),
libtag-extras-dev (>= 1.0.1),
libqtwebkit-dev,
libqt4-opengl-dev,
kdelibs5-dev (>= 4:4.8.4),
libglib2.0-dev,
libmysqld-pic (>= 5.5.23+dfsg),
libcurl4-gnutls-dev,
libxml2-dev,
libgtk2.0-dev,
libqca2-dev,
libavformat-dev (>= 4:0.5),
libaio-dev [linux-any],
libwrap0-dev
Build-Depends-Indep: mysql-server-core-5.5 | mysql-server-core
Standards-Version: 3.9.5
Homepage: http://amarok.kde.org
Vcs-Git: git://anonscm.debian.org/pkg-kde/kde-extras/amarok.git
Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-kde/kde-extras/amarok.git
Package: amarok
Architecture: any
Depends: amarok-common (= ${source:Version}),
amarok-utils (= ${binary:Version}),
${shlibs:Depends},
${misc:Depends},
libqtscript4-core,
libqtscript4-gui,
libqtscript4-network,
libqtscript4-xml,
libqtscript4-sql,
libqtscript4-uitools
Suggests: amarok-doc (>= ${source:Version}),
libqt4-sql-sqlite,
libqt4-sql-mysql,
libqt4-sql-psql,
Description: easy to use media player based on the KDE Platform
Amarok is a powerful music player with an intuitive interface. It makes
playing the music you love and discovering new music easier than ever before
and it looks good doing it! Amarok is based on the powerful Qt4 / KDE4
Platform and nicely integrates with KDE desktop.
.
Amarok comes with a lot of features including but not limited to:
- Scripts - enhance your Amarok experience with community developed scripts.
- Dynamic Playlists - create playlists that automatically update.
- Context View - customize interface with the Plasma powered Context View.
- PopUp Dropper - simplify drag&drop actions with revolutionary menu system.
- Multiple Language Translations
- Collection Management - organizing your music collection has never been
easier with Amarok's powerful tagging, renaming, and sorting abilities.
- Scriptable Services - integrate other web services into Amarok.
Package: amarok-common
Architecture: all
Depends: ${misc:Depends}, ${perl:Depends}
Recommends: amarok (>= ${source:Version})
Description: architecture independent files for Amarok
This package contains architecture independent files needed for Amarok to run
properly. Therefore, unless you have 'amarok' package of the same version
installed, you will hardly find this package useful.
.
Amarok is a powerful music player with an intuitive interface.
Package: amarok-doc
Section: doc
Architecture: all
Depends: ${misc:Depends}
Replaces: amarok-common (<= 2.5.0-2)
Breaks: amarok-common (<= 2.5.0-2)
Recommends: amarok (>= ${source:Version})
Description: Amarok documentation (Handbook)
This package contains Amarok user documentation in various languages. It can be
opened from the application menu Help -> Amarok Handbook.
.
Amarok is a powerful music player with an intuitive interface.
Package: amarok-utils
Section: utils
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Replaces: amarok (<< 2.8.0)
Breaks: amarok (<< 2.8.0)
Description: utilities for Amarok media player
This package contains command line utilities that are typically used by Amarok
media player but might also be useful on systems without Amarok installed.
They are designed to be lightweight as they do not depend on KDE libraries.
.
Currently the package contains the following utilities:
- amarokcollectionscanner - scans audio files, collects information from
file tags and prints it in the structured XML format.
- amarok_afttagger - a helper program which writes/removes custom tags
to/from media files required for embedded "Amarok File Tracking".
Package: amarok-dbg
Priority: extra
Section: debug
Architecture: any
Depends: amarok (= ${binary:Version}), ${misc:Depends}
Recommends: kdelibs5-dbg
Suggests: libqtwebkit4-dbg
Description: debugging symbols for Amarok
This package provides debugging symbols for all binary packages built from
amarok source package. It's highly recommended to have this package installed
before reporting any Amarok crashes to either Amarok developers or Debian
package maintainers.Tam na archwiki jest plik od budowania pakietu dla archa to zajrzałem w niego i wyciągnąłem co nieco i wsadziłem do zwykłego skryptu:
#!/bin/bash # applets sed -i '/albums/d' src/context/applets/CMakeLists.txt sed -i '/info/d' src/context/applets/CMakeLists.txt sed -i '/labels/d' src/context/applets/CMakeLists.txt sed -i '/photos/d' src/context/applets/CMakeLists.txt sed -i '/tabs/d' src/context/applets/CMakeLists.txt sed -i '/wikipedia/d' src/context/applets/CMakeLists.txt sed -i '/analyzer/d' src/context/applets/CMakeLists.txt sed -i '/upcomingevents/d' src/context/applets/CMakeLists.txt sed -i '/similarartists/d' src/context/applets/CMakeLists.txt # engines sed -i '/info/d' src/context/engines/CMakeLists.txt sed -i '/labels/d' src/context/engines/CMakeLists.txt sed -i '/photos/d' src/context/engines/CMakeLists.txt sed -i '/tabs/d' src/context/engines/CMakeLists.txt sed -i '/wikipedia/d' src/context/engines/CMakeLists.txt sed -i '/similarartists/d' src/context/engines/CMakeLists.txt sed -i '/upcomingevents/d' src/context/engines/CMakeLists.txt # collections sed -i '/daap/d' src/core-impl/collections/CMakeLists.txt sed -i '/audiocd/d' src/core-impl/collections/CMakeLists.txt sed -i '/ipodcollection/d' src/core-impl/collections/CMakeLists.txt sed -i '/mtpcollection/d' src/core-impl/collections/CMakeLists.txt sed -i '/umscollection/d' src/core-impl/collections/CMakeLists.txt sed -i '/playdarcollection/d' src/core-impl/collections/CMakeLists.txt sed -i '/upnpcollection/d' src/core-impl/collections/CMakeLists.txt sed -i '/nepomukconnection/d' src/core-impl/collections/CMakeLists.txt # services sed -i '/amazon/d' src/services/CMakeLists.txt sed -i '/magnatune/d' src/services/CMakeLists.txt sed -i '/ampache/d' src/services/CMakeLists.txt sed -i '/mp3tunes/d' src/services/CMakeLists.txt sed -i '/jamendo/d' src/services/CMakeLists.txt sed -i '/opmldirectory/d' src/services/CMakeLists.txt sed -i '/gpodder/d' src/services/CMakeLists.txt sed -i '/lastfm/d' src/services/CMakeLists.txt # scripts sed -i '/free_music_charts_service/d' src/scripts/CMakeLists.txt sed -i '/librivox_service/d' src/scripts/CMakeLists.txt sed -i '/radio_station_service/d' src/scripts/CMakeLists.txt sed -i '/lyrics_lyricwiki/d' src/scripts/CMakeLists.txt # utilities sed -i '/amzdownloader/d' utilities/CMakeLists.txt # languages sed -i '/(sr@ijekavianlatin)/d' po/CMakeLists.txt sed -i '/(fi)/d' po/CMakeLists.txt sed -i '/(el)/d' po/CMakeLists.txt sed -i '/(ca@valencia)/d' po/CMakeLists.txt sed -i '/(sr)/d' po/CMakeLists.txt sed -i '/(sl)/d' po/CMakeLists.txt sed -i '/(fr)/d' po/CMakeLists.txt sed -i '/(zh_CN)/d' po/CMakeLists.txt sed -i '/(de)/d' po/CMakeLists.txt sed -i '/(sr@ijekavian)/d' po/CMakeLists.txt sed -i '/(es)/d' po/CMakeLists.txt sed -i '/(ca)/d' po/CMakeLists.txt sed -i '/(pt)/d' po/CMakeLists.txt sed -i '/(it)/d' po/CMakeLists.txt sed -i '/(sv)/d' po/CMakeLists.txt sed -i '/(et)/d' po/CMakeLists.txt sed -i '/(lt)/d' po/CMakeLists.txt sed -i '/(zh_TW)/d' po/CMakeLists.txt sed -i '/(tr)/d' po/CMakeLists.txt sed -i '/(da)/d' po/CMakeLists.txt sed -i '/(sr@latin)/d' po/CMakeLists.txt sed -i '/(en_GB)/d' po/CMakeLists.txt sed -i '/(nb)/d' po/CMakeLists.txt sed -i '/(ja)/d' po/CMakeLists.txt sed -i '/(eu)/d' po/CMakeLists.txt sed -i '/(nl)/d' po/CMakeLists.txt sed -i '/(uk)/d' po/CMakeLists.txt sed -i '/(lv)/d' po/CMakeLists.txt sed -i '/(ru)/d' po/CMakeLists.txt sed -i '/(ro)/d' po/CMakeLists.txt sed -i '/(bs)/d' po/CMakeLists.txt sed -i '/(cs)/d' po/CMakeLists.txt sed -i '/(hu)/d' po/CMakeLists.txt sed -i '/(pt_BR)/d' po/CMakeLists.txt sed -i '/(gl)/d' po/CMakeLists.txt sed -i '/(ga)/d' po/CMakeLists.txt sed -i '/(pa)/d' po/CMakeLists.txt # documentation languages #sed -i '(en_US)/d' doc/CMakeLists.txt sed -i '/(de)/d' doc/CMakeLists.txt sed -i '/(es)/d' doc/CMakeLists.txt sed -i '/(pt)/d' doc/CMakeLists.txt sed -i '/(sv)/d' doc/CMakeLists.txt sed -i '/(et)/d' doc/CMakeLists.txt sed -i '/(nl)/d' doc/CMakeLists.txt sed -i '/(uk)/d' doc/CMakeLists.txt sed -i '/(ru)/d' doc/CMakeLists.txt sed -i '/(pt_BR)/d' doc/CMakeLists.txt
Większość usuniętych opcji mówi sama za siebie. Trochę to dostosowałem do swoich potrzeb, zostawiając tam chyba 2 rzeczy, których używam.
Dopisałem trochę linijek do pliku debian/rules i obecnie wygląda tak:
#!/usr/bin/make -f
#DEB_KDE_LINK_WITH_AS_NEEDED := yes
# Add --no-relax when linking on Alpha in order to fix FTBFS (#684932)
ifeq (alpha,$(shell dpkg-architecture -qDEB_HOST_ARCH))
export DEB_LDFLAGS_MAINT_APPEND := -Wl,--no-relax
endif
override_dh_auto_configure:
dh_auto_configure -- -DCMAKE_USE_RELATIVE_PATHS=ON \
-DKDE4_BUILD_TESTS=OFF \
-DCMAKE_INSTALL_PREFIX=`kde4-config --prefix` \
-DCMAKE_BUILD_TYPE=Release \
-DQT_QMAKE_EXECUTABLE=qmake-qt4 \
-DKDE4_BUILD_TESTS=OFF \
-DWITH_LibLastFm=OFF \
-DWITH_Mtp=OFF \
-DWITH_IPOD=OFF \
-DWITH_LibOFA=OFF \
-DWITH_QJSON=OFF \
-DWITH_Mygpo-qt=OFF \
-DWITH_NepomukCore=OFF \
-DWITH_Soprano=OFF \
-DWITH_PLAYGROUND=OFF \
-DWITH_MP3Tunes=OFF \
-DWITH_SPECTRUM_ANALYZER=OFF
override_dh_bugfiles:
dh_bugfiles -A
override_dh_install:
dh_install
# Copy English errmsg.sys from mysql-server-core package
if [ -d debian/amarok-common ]; then \
cp -a /usr/share/mysql/english/errmsg.sys debian/amarok-common/usr/share/kde4/apps/amarok/mysqle/; \
fi
override_dh_makeshlibs:
dh_makeshlibs "-Xusr/lib/kde4/*"
override_dh_builddeb:
dh_builddeb -- -Zxz
%:
dh $@ --with kde --parallel --dbg-package=amarok-dbg
.PHONY: override_dh_auto_testPozmieniałem też część plików debian/*.install . Nie pamiętam czy przy każdym majstrowałem coś, w każdym razie wyglądają jak poniżej:
debian/amarok.install
debian/icons/* /usr/share/pixmaps usr/bin/amarok usr/bin/amarokpkg usr/lib/kde4/amarok_collection-mysqlecollection.so usr/lib/kde4/amarok_collection-mysqlservercollection.so usr/lib/kde4/amarok_containment_vertical.so usr/lib/kde4/amarok_context_applet_currenttrack.so usr/lib/kde4/amarok_context_applet_lyrics.so usr/lib/kde4/amarok_data_engine_current.so usr/lib/kde4/amarok_data_engine_lyrics.so usr/lib/libamarok-sqlcollection.so.1* usr/lib/libamarok-transcoding.so.1* usr/lib/libamarokcore.so.1* usr/lib/libamaroklib.so.1* usr/lib/libamarokocsclient.so.4* usr/lib/libamarokpud.so.1* usr/share/applications/kde4/amarok.desktop usr/share/applications/kde4/amarok_containers.desktop usr/share/kde4/apps/kconf_update/amarok.upd usr/share/kde4/services/amarok.protocol
debian/amarok-common.install
usr/share/icons/hicolor/* usr/share/kde4/apps/amarok/amarok.notifyrc usr/share/kde4/apps/amarok/data/* usr/share/kde4/apps/amarok/icons/* usr/share/kde4/apps/amarok/images/* usr/share/kde4/apps/desktoptheme/* usr/share/kde4/apps/kconf_update/amarok-2.4.1-tokens_syntax_update.pl usr/share/kde4/apps/solid/actions/amarok-play-audiocd.desktop usr/share/kde4/config.kcfg/* usr/share/kde4/config/amarok.knsrc usr/share/kde4/config/amarok_homerc usr/share/kde4/config/amarokapplets.knsrc usr/share/kde4/services/ServiceMenus/* usr/share/kde4/services/amarok-containment-vertical.desktop usr/share/kde4/services/amarok-context-applet-currenttrack.desktop usr/share/kde4/services/amarok-context-applet-lyrics.desktop usr/share/kde4/services/amarok-data-engine-current.desktop usr/share/kde4/services/amarok-data-engine-lyrics.desktop usr/share/kde4/services/amarok_collection-mysqlecollection.desktop usr/share/kde4/services/amarok_collection-mysqlservercollection.desktop usr/share/kde4/services/amarokitpc.protocol usr/share/kde4/servicetypes/amarok_codecinstall.desktop usr/share/kde4/servicetypes/amarok_context_applet.desktop usr/share/kde4/servicetypes/amarok_data_engine.desktop usr/share/kde4/servicetypes/amarok_plugin.desktop usr/share/locale/*
debian/amarok-doc.install
usr/share/doc/kde/HTML/en/*
debian/amarok-utils.install
usr/bin/amarok_afttagger usr/bin/amarokcollectionscanner usr/lib/libamarokshared.so.1*
Pakiety się zbudowały (póki co na mojej maszynie), amarok działa, w opcjach syfu zbędnego nie widać:

Patrząc po zależnościach nowych paczek amaroka, są tam poniższe pakiety:
amarok:
Depends: amarok-common (= 2.8.0-2), amarok-utils (= 2.8.0-2), kde-runtime (>> 4:4.10), libaio1 (>= 0.3.93), libc6 (>= 2.17), libkcmutils4 (>= 4:4.8.4), libkdecore5 (>= 4:4.8.4), libkdeui5 (>= 4:4.10.0), libkfile4 (>= 4:4.8.4), libkio5 (>= 4:4.8.4), libknewstuff3-4 (>= 4:4.8.4), libmysqlclient18 (>= 5.5.24+dfsg-1), libphonon4 (>= 4:4.7.0.0), libplasma3 (>= 4:4.8.4), libqt4-dbus (>= 4:4.6.1), libqt4-network (>= 4:4.5.3), libqt4-script (>= 4:4.5.3), libqt4-sql (>= 4:4.5.3), libqt4-svg (>= 4:4.5.3), libqt4-xml (>= 4:4.5.3), libqtcore4 (>= 4:4.8.0), libqtgui4 (>= 4:4.8.0), libsolid4 (>= 4:4.8.4), libstdc++6 (>= 4.4.0), libthreadweaver4 (>= 4:4.8.4), libx11-6, phonon, zlib1g (>= 1:1.2.0), libqtscript4-core, libqtscript4-gui, libqtscript4-network, libqtscript4-xml, libqtscript4-sql, libqtscript4-uitools
amarok-utils
Depends: libc6 (>= 2.14), libkdecore5 (>= 4:4.8.4), libqtcore4 (>= 4:4.8.0), libqtgui4 (>= 4:4.5.3), libstdc++6 (>= 4.6), libtag-extras1 (>= 1.0.1), libtag1c2a (>= 1.9.1)
amarok-common
Depends: perl
Te zależności powyżej są generowane przez ${shlibs:Depends}, ${misc:Depends} i ${perl:Depends} . Nie wiem czy to nie dorzuca jakiegoś syfu i tak się zastanawiam czy nie lepiej ręcznie sprecyzować zależności. No bo w tym archlinuxowym PKGBUILD w zależnościach jest: niby:
depends=('kdebase-runtime' 'mariadb' 'qtscriptgenerator' 'taglib-extras' 'ffmpeg')Da radę coś z tego jeszcze wykroić?
Czy źródła trzeba zmieniać, czy wystarczy edycja tych plików .install w katalogu debian/ ?
I jeszcze taka sprawa, jak podejrzeć opcje, które można podać w debian/rules ? Normalnie jak jest skrypt configure to można tam dać help i podejrzeć opcje ale tutaj nie ma żadnego configure.
Offline


Użytkownik



Okrojony Amarok nazywa się Clementine.
Offline





Cenzor wirtualnego świata



Użytkownik




Dokładnie clementine to stary amarok na kde to mi chodziło dwa razy szybciej i było zdecydowanie mniej pamięciożerne niż amarok. Wporzo odtwarzacz i nie instaluje dodatkowych śmieci...
Offline




Użytkownik





A dla jakich funkcji używacie Amaroka?
Tak mnie zastanawia, bo ja przez gnome-mplayer lecę :D
Fervi
Offline





Cenzor wirtualnego świata
Bo jako jedyny ma normalna listę odtwarzania, bez dublowania miliona razy zespołu, roku, albumu, okładki czy gatunku. Obsługuje zajebiście tagi id3 i potrafi do nich zapisywać staty piosenek, i w ten sposób można wyeliminować zewnętrzne bazy danych, bo wszystko siedzi w plikach.
Offline



Użytkownik




dobry kombajn, ale właśnie nawet po obkrojeniu to dalej kombajn, audacious z winampowym interfejsem 9mb ramu je, żeby uzyskać taki wynik w amaroku to zostałby sam przycisk play po obkrojeniu;)
Ale na lepszym sprzęcie pewnie... jakby nie patrzeć to nadal najlepszy i najbardziej funkcjonalny kombajn...
Ostatnio edytowany przez menel (2014-01-03 18:32:02)
Offline

Użytkownik


Może miałeś jakąś kopniętą wersję Clementine? U mnie pobiera stabilnie 32mb ram. Nie jest to szczyt lekkości, ale z większości jej ficzerów korzystam. (Takich jak androidowy pilot, scroobler, uzupełnianie tagów i okładek czy nawet strumienie).

Offline





Cenzor wirtualnego świata