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/.
Część z plików u mnie nie ma ikonek i chciałbym im je dorobić albo przynajmniej podpiąć te pliki pod już istniejące ikonki.
Na archwiki piszą coś o xdg, a konkretnie chodzi o to polecenie:
$ xdg-mime query filetype zsh-common_5.1.1-1_all.deb
Zwraca ono nic i pewnie dlatego paczki deb u mnie nie mają ikonek. Szukając na necie natrafiłem info o pliku ~/.local/share/applications/mimeapps.list . Poszukałem zatem jaki typ ma paczka deb i ustaliłem, że jest to application/vnd.debian.binary-package . Według tego pliku, paczki deb otwierane są w:
application/vnd.debian.binary-package=xarchiver.desktop;
I tak faktycznie jest, po 2x kliku myszy, paczka jest otwierana w xarchiver. Inne pliki, jak zip, tar również są otwierane w xarchiver i mają normalne ikonki. Z tego wychodzi, że to wiązanie via plik mimeapps.list nie zmieni ikonek. Zatem gdzie się to robi? xD
Ostatnio edytowany przez morfik (2016-01-18 14:15:18)
Offline
Zaglądałeś do katalogu z danym stylem ikon?
Przykładowo: /usr/share/icons/styl_ikon/XX×YY/mimetypes
U mnie jest to plik: application-x-deb.png
Offline
Poszukałem innych ikonek, przypominających te, które są wyświetlane i okazało się, że może i mam jeden styl określony ale widać to jakaś nakładka i pozostałe ikonki są brane z innego katalogu. No i w końcu znalazłem ten właściwy i jest tam również ten katalog mimetypes/ .
Zgodnie z /usr/share/mime/application/vnd.debian.binary-package.xml ten typ pliku ma dodatkowo dwa aliasy:
<mime-type xmlns="http://www.freedesktop.org/standards/shared-mime-info" type="application/vnd.debian.binary-package"> ... <alias type="application/x-deb"/> <alias type="application/x-debian-package"
oraz przypisaną ikonkę:
<generic-icon name="package-x-generic"/>
I to ma się odnosić do plików:
<glob pattern="*.deb"/> <glob pattern="*.udeb"/>
W lxappearance przestawiałem style ikon ale żaden z nich nie potrafi załadować tej ikonki. Teoretycznie powinny dać radę te dwa:
# ls -al /usr/share/icons/*/*/*/package-x-generic.svg -rw-r--r-- 1 root root 21K 2011-06-17 14:27:26 /usr/share/icons/Tango/scalable/mimetypes/package-x-generic.svg -rw-r--r-- 1 root root 78K 2015-06-11 11:55:04 /usr/share/icons/matefaenza/mimetypes/scalable/package-x-generic.svg
Jednak one też nie dają rady. Coś mam gdzieś schrzanione. xD
Ostatnio edytowany przez morfik (2015-10-10 17:53:11)
Offline
Jednak coś mam schrzanione na 100%:
# xdg-mime query filetype zsh-common_5.1.1-1_all.deb application/vnd.debian.binary-package $ xdg-mime query filetype zsh-common_5.1.1-1_all.deb
Założę się, że jak w tym drugim się pojawi, to będzie działać. xD
Offline
Udało mi się ustalić co tutaj się schrzaniło. Znów kompatybilność wsteczna się dała we znaki ale po kolei.
Ten plik mimeapps.list zgodnie z tym co piszą w dokumentacji pod http://standards.freedesktop.org/mime-apps-spec/mim … spec-1.0.html , może znajdować się w wielu miejscach i mieć kilka prefixów w zależności od używanego środowiska graficznego. Część z tych lokalizacji jest przestarzała ale jak widać wciąż wykorzystywana.
Stanęło na tym, że zrobiłem plik '/home/morfik/.config/mimeapps.list' i dałem do niego poniższe dowiązania:
$ ls -al /home/morfik/.config/*mime* lrwxrwxrwx 1 morfik morfik 13 2015-10-10 21:40:14 /home/morfik/.config/gnome-mimeapps.list -> mimeapps.list lrwxrwxrwx 1 morfik morfik 13 2015-10-10 21:40:10 /home/morfik/.config/kde-mimeapps.list -> mimeapps.list -rw-r--r-- 1 morfik morfik 4.0K 2015-10-09 16:57:36 /home/morfik/.config/mimeapps.list lrwxrwxrwx 1 morfik morfik 13 2015-10-10 21:40:19 /home/morfik/.config/openbox-mimeapps.list -> mimeapps.list $ ls -al /home/morfik/.local/share/applications total 8.0K drwxr-xr-x 2 morfik morfik 4.0K 2015-10-10 21:41:39 ./ drwxr-xr-x 27 morfik morfik 4.0K 2015-10-10 21:32:28 ../ lrwxrwxrwx 1 morfik morfik 30 2015-10-10 21:41:25 gnome-mimeapps.list -> ../../../.config/mimeapps.list lrwxrwxrwx 1 morfik morfik 30 2015-10-10 21:41:29 kde-mimeapps.list -> ../../../.config/mimeapps.list lrwxrwxrwx 1 morfik morfik 30 2015-10-10 21:41:39 mimeapps.list -> ../../../.config/mimeapps.list lrwxrwxrwx 1 morfik morfik 30 2015-10-10 21:41:36 openbox-mimeapps.list -> ../../../.config/mimeapps.list
Może przesadzam ale co tam, teraz przynajmniej wszystko jest w jednym miejscu, na wypadek gdyby jakieś programy chciały się odwoływać do tych plików. xD
Generalnie to te pliki z prefixami są za sprawą zmiennej $XDG_CURRENT_DESKTOP , którą chyba środowiska graficzne ustawiają i tak np. w gnome było by to $XDG_CURRENT_DESKTOP="gnome" i ten powyższy plik by się nazywał gnome-mimeapps.list i to jego ustawienia by były brane pod uwagę zamiast tego zwykłego mimeapps.list .
U mnie na openboxie tej zmiennej nie ma, choć w sumie mógłbym ją ustawić na openbox. Nie jest wspomniane, który plik jest brany pod uwagę gdy tej zmiennej niema ale można założyć, że mimeapps.list z jednej lub drugiej lokalizacji.
Oczywiście to nie przyniosło rozwiązania problemu. Więc przeszukałem pozostałe zmienne środowiskowe w poszukiwaniu czegoś co mi podsunie jakiś pomysł, no i znalazłem GNOME_DESKTOP_SESSION_ID="1" . To jest ta stara zmienna od unifikacji ikonek, tak żeby ikonki w aplikacjach gtk były takie same co i w qt. Po usunięciu jej ze środowiska:
$ xdg-mime query filetype acl_2.2.52-2_amd64.deb application/vnd.debian.binary-package
Zatem typy plików są rozpoznawane poprawnie. Wprawdzie nadal nie ma tej ikonki na paczkach debiana, no i teraz nie wiem jak pogodzić te zmienną GNOME_DESKTOP_SESSION_ID z tymi typami plików ale zawsze to krok na przód, a że dwa kroki w tył... xD
Offline
U mnie działa normalnie.
Zmienne:
XDG_VTNR=7 XDG_SESSION_ID=2 SSH_AGENT_PID=31196 XDG_GREETER_DATA_DIR=/var/lib/lightdm/data/yossarian QT_STYLE_OVERRIDE=gtk TERM=xterm SHELL=/bin/bash GTK2_RC_FILES=/home/yossarian/.gtkrc-2.0 WINDOWID=0 USER=yossarian LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36: XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session1 XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0 SSH_AUTH_SOCK=/tmp/ssh-ErTz4ltcrbUY/agent.31159 DESKTOP_SESSION=openbox PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games QT_IM_MODULE=compose PWD=/home/yossarian XDG_SESSION_TYPE=x11 LANG=en_GB.UTF-8 GDM_LANG=en_GB.utf8 GDMSESSION=openbox SHLVL=1 XDG_SEAT=seat0 COLORFGBG=15;0 HOME=/home/yossarian SDL_AUDIODRIVER=alsa LANGUAGE= CUR_WIDTH=0 LOGNAME=yossarian XDG_SESSION_DESKTOP=openbox DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-8m2pICwi8B,guid=adbde7efc3ec7f983578ba6456197393 DISPLAY=:0 XDG_RUNTIME_DIR=/run/user/1001 XAUTHORITY=/home/yossarian/.Xauthority _=/usr/bin/env
ls -al ~/.config/*mime* -rw-r--r-- 1 yossarian yossarian 1161 Sep 13 18:53 /home/yossarian/.config/mimeapps.list
i z LXQt:
XDG_VTNR=7 XDG_SESSION_ID=3 SSH_AGENT_PID=31730 XDG_GREETER_DATA_DIR=/var/lib/lightdm/data/yossarian SAL_USE_VCLPLUGIN=kde4 XDG_DATA_HOME=/home/yossarian/.local/share XDG_MENU_PREFIX=lxqt- SHELL=/bin/bash TERM=xterm GTK2_RC_FILES=/home/yossarian/.gtkrc-2.0 WINDOWID=0 USER=yossarian LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36: XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session2 XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0 SSH_AUTH_SOCK=/tmp/ssh-zFLZiJ9K5xYb/agent.31693 LXQT_SESSION_CONFIG=session XDG_CONFIG_DIRS=/etc/xdg DESKTOP_SESSION=lxqt PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games QT_IM_MODULE=compose QT_QPA_PLATFORMTHEME=lxqt XDG_SESSION_TYPE=x11 PWD=/home/yossarian LANG=en_GB.UTF-8 GDM_LANG=en_GB.utf8 GDMSESSION=lxqt QT_PLATFORM_PLUGIN=lxqt SHLVL=1 HOME=/home/yossarian COLORFGBG=15;0 XDG_SEAT=seat0 LANGUAGE= XDG_CONFIG_HOME=/home/yossarian/.config CUR_WIDTH=0 LOGNAME=yossarian XDG_SESSION_DESKTOP=lxqt XDG_DATA_DIRS=/home/yossarian/.local/share:/usr/local/share/:/usr/share/ DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-5nbGWcUEiN,guid=f07010122cece033d72a977356197682 GTK_CSD=0 XDG_RUNTIME_DIR=/run/user/1001 DISPLAY=:0 XDG_CURRENT_DESKTOP=LXQt XAUTHORITY=/home/yossarian/.Xauthority _=/usr/bin/env
I u mnie nie ma pliku /usr/share/mime/application/vnd.debian.binary-package.xml
Offline
W tych zmiennych nie ma nic niezwykłego, mam w sumie praktycznie tak samo.
I u mnie nie ma pliku /usr/share/mime/application/vnd.debian.binary-package.xml
Te pliki pod /usr/share/mime/application/ są generowane via:
# update-mime-database /usr/share/mime
Masz tam jakieś pliki, prawda?
Offline
Na stackexchange ktoś mi tam wspomniał o zmianach rozmiarów wewnątrz menadżera plików i oczywiście, to nie zadziałało ale podsunęło mi to pomysł o przetestowaniu innego menadżera plików. Zainstalowałem więc pierwsze z brzega -- caja. I na nim ikonki paczek debiana są wyświetlane poprawnie, nawet na tym stylu ikonek co używam. :] To teraz trzeba ustalić czemu spacefm nie wyświetla tych ikonek.
Ktoś może też używa spacefm i mógłby sprawdzić u siebie czy ma ikonki przy paczkach debiana?
Przy domyślnych plikach konfiguracyjnych, jak i na nowym użytkowniku, ten problem cały czas występuje. Zatem albo coś jest schrzanione w konfiguracji systemu, albo jest to jakiś bug w spacefm. Także przydałoby się potwierdzenie.
Ostatnio edytowany przez morfik (2015-10-11 10:23:51)
Offline
morfik napisał(-a):
Ktoś może też używa spacefm i mógłby sprawdzić u siebie czy ma ikonki przy paczkach debiana?
Nie działa u mnie też.
Offline
Ha, wiedziałem, że mam wszystko w porządku! xD
Przy okazji przetestowałem na livecd ze stable. I tam stara wersja spacefm działa. Jednak zainstalowanie tego spacefm ze stable na sidzie nie przynosi poprawy. Coś uległo zmianie chyba w innej części systemu i trzeba chyba posłać bug report.
Ostatnio edytowany przez morfik (2015-10-11 11:43:52)
Offline
Wersja w sidzie jest 100 lat za murzynami, bo mnie wersja ffmpegthumbnailer blokuje z aktualizacją.
Spróbuj wrzucić wersję stąd:
http://repozytorium.mati75.eu/debian/pool/main/s/spacefm/
Offline
Przy okazji znalazłem ten problem: https://github.com/IgnorantGuru/spacefm/issues/530 -- dokładnie to samo mam u siebie, tj. np. zapisie plików w firefoxie -- tam są ikonki normalne, a w spacefm nie ma.
Tam w linku piszą, że to jest fixnięte w 1.0.2. U ciebie jest 1.0.3 ale na nim też nie działa. xD
Ostatnio edytowany przez morfik (2015-10-11 16:36:32)
Offline
1.0.3 siedzi w incoming, o 18 będzie w repozytorium.
Ostatnio edytowany przez mati75 (2015-10-15 15:20:32)
Offline
Udało mi się w końcu to finxąć.
Czytając dogłębniej info o tym bugu https://github.com/IgnorantGuru/spacefm/issues/530 , zainteresowałem się bardziej folderem ~/.local/share/mime/packages/ . Przez spacefm można tam kopiować odpowiednie pliki .xml . W tym przypadku jest to application-vnd.debian.binary-package.xml . Wygląda on w uproszczeniu tak:
<?xml version='1.0' encoding='utf-8'?> <mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'> <mime-type type='application/vnd.debian.binary-package'> <comment>Debian package</comment> <comment xml:lang="pl">Pakiet Debiana</comment> <alias type="application/x-deb"/> <alias type="application/x-debian-package"/> <generic-icon name="package-x-generic"/> <glob pattern="*.deb"/> <glob pattern="*.udeb"/> </mime-type> </mime-info>
Samo przekopiowanie tego pliku przy pomocy mechanizmu spacefm nie poprawia jednak problemu (dalej nie ma ikonki). Natomiast edycja tego pliku i dodanie tych dwóch poniższych linijek sprawia, że ikonka zostanie dodana do plików:
<alias type="application/vnd.debian.binary-package"/> <icon name="package-x-generic"/>
Generalnie, to spacefm zdaje się nie czytać tagu generic-icon i przyjmuje jedynie tag icon. Natomiast jeśli chodzi o typ, to odczytałem go z właściwości pliku .deb .
Teraz o wiele lepiej to wygląda: xD
Offline
Chcesz to zgłosić jako bug do pakietu? Wrzucę w następnym uploadzie.
Offline
A tu jest coś do poprawy? Mogę zgłosić, choć nie wiem co zbytnio. xD
Generalnie rzecz biorąc, to pliki .xml wszystkich powiązań, które są w pliku /usr/share/mime/generic-icons trzeba by przekopiować do ~/.local/share/mime/packages by zunifikować ikonki w sesji użytkownika. Bo przeglądarka i chyba też większość aplikacji korzysta z tego pliku /usr/share/mime/generic-icon , a spacefm nie.
Właśnie jeszcze sprawdziłem przykładowy plik .ps (typ MIME, application/postscript).
Tak wyglądała ikonka przed przekopiowaniem pliku:
A tak po przekopiowaniu:
Z kolei firefox zawsze ją widzi w poniższy sposób:
Pewnie da radę jakąś lokalną bazę zrobić z tego pliku /usr/share/mime/generic-icons , by te ikonki wyglądały wszędzie tak samo.
Ostatnio edytowany przez morfik (2016-01-18 17:51:49)
Offline
U mnie firefox chce otwierać tar.xz jako tekst. Co jest ciekawe.
Offline
Pewnie masz pochrzanione powiązania albo ich w ogóle nie masz. xD To zwykle pomaga: http://kb.mozillazine.org/MimeTypes.rdf .
Jak coś to tutaj masz schemat budowy typów w ff: http://pastebin.com/aY1R3Ypu
Ostatnio edytowany przez morfik (2016-01-18 20:09:54)
Offline