LinuxForum.Fans
Тема

Задание общей иконки файлам с общим расширением

Автор: medusa 20 сообщений 1931 просмотров
21.10.2019 16:31 #433091

Уважаемые Господа столкнулся с о сложным для себя вопросом - назначения общей иконки файлам с расширением *.MOD. Для решения данной проблемы я выполнил следующие действия:

1. Создал файл в текстовом редакторе и сохранил его, как xml

text

<?xml version="1.0"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
<mime-type type="user/mod">
<comment>video files MOD</comment>
<glob pattern="*.mod"/>
</mime-type>
</mime-info>

2. Проинталлировал данный файл

[console]
xdg-mime install /<путь к файлу>/user-mod.xml
[/console]

3. Далее, я создал файл user-mod.png, который необходимо разместить по адресу /usr/share/icons/ ??? /scalable/mimetypes

И тут возник вопрос в какую директорию определить созданный файл png?

Показать



Может есть информация по данному вопросу? Спасибо.

21.10.2019 16:53 #433092

medusa, по идее, в ту, которая у вас установлена как тема иконок.

21.10.2019 18:00 #433094
"Rizado" написал:
medusa, по идее, в ту, которая у вас установлена как тема иконок.

Установил, Однако результат тот-же(((. Вероятно, что-то делаю не так.

21.10.2019 19:29 #433097
"Rizado" написал:
user-x-mod.png, если я правильно понял документацию.

Выполнил, но результат отрицательный.

21.10.2019 20:01 #433100

medusa, по ссылке читали материал? Он на русском.

22.10.2019 17:55 #433111
"Rizado" написал:
medusa, по ссылке читали материал? Он на русском.

Я прочитал, но пока что мало что понял. Ну например:

text
зарегистрируйте значок для типа MIME:

xdg-icon-resource install --context mimetypes --size 48 myicon-file-type.png x-application-mytype

myicon-file-type.png - это место расположения файла png или нет? Спасибо.

22.10.2019 18:56 #433112
"medusa" написал:
myicon-file-type.png - это место расположения файла png или нет? Спасибо.

Посмотрите справку по команде [console=inline]man xdg-icon-resource[/console], там всё это есть. И откройте ссылку в конце для подробностей.

23.10.2019 13:55 #433120
"Rizado" написал:
Посмотрите справку по команде man xdg-icon-resource, там всё это есть. И откройте ссылку в конце для подробностей.

Спасибо, конечно, но я не понял все равно. Во-первых, в терминале:

[console]
EXAMPLES
To install an icon resource to depict a launcher for the application myfoobar, the company
ShinyThings Inc. can use:

xdg-icon-resource install --size 64 shinythings-myfoobar.png

To install an icon for a new application/x-foobar file type one can use:

xdg-icon-resource install --context mimetypes --size 48 ./mime-foobar-48.png application-x-foobar
xdg-icon-resource install --context mimetypes --size 64 ./mime-foobar-64.png application-x-foobar

This will install two icons with the name application-x-foobar but with different sizes.

[/console]

Мне необходимо изменить привязку иконки только одного расширения файла. Видимо надо мыслить абстрактно, но у меня не получается абстрагироваться. Я не понимаю.((( Во-вторых, ссылка в конце. Я перешел по ссылке. там написано:


An icon theme is a set of icons that share a common look and feel. The user can then select the icon theme that they want to use, and all applications will use icons from the theme.
------------------------------------------------------------------------------------------------------------------------------------------------------
Тема значков - это набор значков, которые имеют общий вид и расширения. Затем пользователь может выбрать тему значка, которую он хочет использовать, и все приложения будут использовать значки из этой темы.

На сколько я понимаю, речь идет о создании собственной темы, но ведь мне это не нужно. Может я не понятно спрашиваю. Давайте с начала. Я подключаю внешний HDD. На нем в папке FILES_CAMERA лежат файлы с раширением .MOD. И выглядят они вот так:

Показать

Пустые файлы и файлы - файлы которым я пытался изменить значок, который получил после обработки изображения:

Показать

, расположенный по адресу /home/medusa/Загрузки/tems

Со скрипичными ключами файлы, иконки которых я не пытался изменить. Более того - я просто не понял откуда берется именно эта иконка. Искал. Убил более 4 часов (просто дело принципа), но ничего не нашел. Можно поменять иконку каждого в отдельности файла, но это ОЧЕНЬ НЕ УДОБНО. Вот и возникла идея найти способ присвоить конкретную иконку конкретному расширению файла. Я нашел рекомендации поданному вопросу о которых писал в первом сообщении. Но та рекомендация не сработала. https://coder-booster.ru/q/register-file-extensions-mime-types-in-linux-1490/ эту ссылку, как и писал ранее, я изучил. однако либо я глупый, либо у меня просто не хватает знаний. Просто убить еще 3-4 дня на изучение данной проблемы просто не имею. Отсюда вопрос - если у знатоков данного вопроса нет желания просто объяснить, как это делается, может существует более адаптированный (сжатый) вариант для обучения? Спасибо. *WALL*

23.10.2019 16:35 #433124

https://www.linuxmint.com.ru/viewtopic.php?t=2176 − видели? Здесь, правда, решение для Cinnamon, но, думаю, большой разницы нет. Обратите внимание на строку:

text
    <generic-icon name="audio-x-ms-wma"/>
24.10.2019 12:14 · отредактировано #433126
"Rizado" написал:
видели? Здесь, правда, решение для Cinnamon, но, думаю, большой разницы нет

Спасибо. Я видел этот топик. Вот пишет человек:

В первую очеред посмотри, с каким маймтайипом ассоциировано расширение с командой file чегонибудь.ino
Дальше уже колдовать с его хml-кой и кастомными иконками

Нет вопросов. Сделал.

[console]
file /home/medusa/Видео/MOV06A.MOD
/home/medusa/Видео/MOV06A.MOD: MPEG sequence, v2, program multiplex
[/console]

Что такое program multiplex? Теперь, судя по тексту, кастомные иконки имеется в виду те, что могу сделать сам, но тогда команда

text
<generic-icon name="audio-x-ms-wma"/>

, что подразумевает? Это иконка из существующего набора? Можно ОДУРЕТЬ. Я не понимаю.((((Я Совсем не понимаю ни немного никак. Господи ну давайте сделаем понятную простую для понимагия инструкцию, чтобы люди не бились в стену головой как я. Ведь простота - сестра таланта. А это навороченная дурь.((((
Добавлено: 24.10.2019 11:40:12

Ну, что? Я не сдаюсь. Буду искать решения данной проблемы. *HELP*

Добавлено: 24.10.2019 12:14:01

И так, сразу хочу сказать, что программа Assogiate работала в Ubuntu до версии 10.04 включительно. Здесь эта программа больше не работает. Так, что даже не заморачивайтесь. Будем искать иной алгоритм действий. Поэтому все дальнейшие действия буду производить на vmware с этой-же установленной системой.

24.10.2019 12:50 #433148
"medusa" написал:
Поэтому все дальнейшие действия буду производить на vmware с этой-же установленной системой.

VMWare платная. Есть вполне бесплатный вариант VirtualBox.

24.10.2019 17:42 · отредактировано #433150
"Rizado" написал:
VMWare платная. Есть вполне бесплатный вариант VirtualBox.

Ну мне кажется в данном то контексте это не существенно. Просто я же не саму виртуалку то буду ставить. Так что думаю народ на меня не обидется))) Эта вещь, vmware workstation 14, у меня довольно давно стоит именно на такие случаи - случаи "глубокого бурения".
Добавлено: 24.10.2019 17:42:34

Итак, Господа, несколько дней "нервной нестабильности" принесли свои плоды, которые вылились в следующую ИНСТРУКЦИЮ (Система Ubuntu 18.04.2)

1. Проверяем тип MIME файла (в моем случае mod):

[console]
$ grep 'mod' /etc/mime.types
application/vnd.ibm.modcap
chemical/x-macromodel-input mmd mmod
model/iges igs iges
model/mesh msh mesh silo
model/vnd.dwf
model/vnd.flatland.3dml
model/vnd.gdl
model/vnd.gs-gdl
model/vnd.gtw
model/vnd.mts
model/vnd.vtu
model/vrml wrl vrml
model/x3d+vrml x3dv
model/x3d+xml x3d
model/x3d+binary x3db
medusa-wm@olegWM:~$ sudo -H gedit /etc/mime.types
[/console]

Файлы с расширением *.mod отсутствуют.

2. Смотрим параметры файла

Показать

В строке Тип видим audio/x-mod.

3. Редактируем файл mime.types

[console]sudo -H gedit /etc/mime.types[/console]

В открывшемся файле мы добавляем следующую строку audio/x-mod mod в блок audio

Показать

4. Создаем значек для файлов *.mod в формате .svg и обзываем его audio-x-mod.svg. Важно: в расширении файлов не должны присутствовать буквы в верхнем регистре!. Полученный файл отправляете в ту графическую тему, которая именно сейчас у вас работает. Например: в настоящий момент я работаю в среде MATE, поэтому команда будет выглядеть так:

[console]
sudo cp /home/medusa-wm/Изображения/audio-x-mod.svg /usr/share/icons/mate/scalable/mimetypes
[/console]

5. В любимом вами текстовом редакторе создаем файл audio-x-mod.xml

text

<?xml version="1.0"?>
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">;
<mime-type type="audio/x-mod">
<comment>Video Camera File</comment>
<glob pattern="*.mod"/>
</mime-type>
</mime-info>

Сохраняем его в удобной для вас директории. В моем случае я сохранил файл по адресу /home/medusa-wm/Документы/xml/audio-x-mod.xml

6. Устанввливаем созданный файл, т.к. прямое копирование файлов с расширением .xml в директорию /usr/share/mime не желательно. Вводим в Терминале:

[console]
xdg-mime install /home/medusa-wm/Документы/xml/audio-x-mod.xml
update-mime-database ~/.local/share/mime
[/console]

Последней командой обновляется КЕШ.

7. Перезагружаем систему.

Теперь у меня значки с расширением *.mod выыглядят так:

Показать

Таким образом можно изменить иконки для любых файлов. И хоть расширения файлов, и директории у вас будут другими общая идея будет одинаковой. Удачи. *BYE*

24.10.2019 18:27 #433156
"medusa" написал:
Создаем значек для файлов *.mod в формате .svg и обзываем его audio-x-mod.svg. Важно: в расширении файлов не должны присутствовать строчные буквы!

Может, наоборот, только строчные буквы? Или набирать ПРОПИСНЫМИ?

24.10.2019 19:12 #433158
"Rizado" написал:
Может, наоборот, только строчные буквы? Или набирать ПРОПИСНЫМИ?

Совершенно верно - не должно быть прописных. Сейчас исправлю.)))

12.11.2019 14:35 · отредактировано #433403

Иконки по умолчанию (т.е. иконки поставляемые с пакетом) устанавливаются в тему/каталог hicolor. Уже в этой папке смотрите структуру расположения иконок по типам и размерам.
[console]root@ps1:~# ls -l /usr/share/icons/hicolor
итого 100
drwxr-xr-x 15 root root 4096 янв 13 2017 128x128
drwxr-xr-x 15 root root 4096 янв 13 2017 16x16
drwxr-xr-x 15 root root 4096 май 22 2016 192x192
drwxr-xr-x 15 root root 4096 янв 13 2017 22x22
drwxr-xr-x 15 root root 4096 май 22 2016 24x24
drwxr-xr-x 15 root root 4096 янв 13 2017 256x256
drwxr-xr-x 15 root root 4096 янв 13 2017 32x32
drwxr-xr-x 15 root root 4096 май 22 2016 36x36
drwxr-xr-x 3 root root 4096 май 24 2016 42x42
drwxr-xr-x 15 root root 4096 янв 13 2017 48x48
drwxr-xr-x 15 root root 4096 сен 4 2017 512x512
drwxr-xr-x 15 root root 4096 янв 13 2017 64x64
drwxr-xr-x 15 root root 4096 май 22 2016 72x72
drwxr-xr-x 3 root root 4096 май 24 2016 8x8
drwxr-xr-x 15 root root 4096 май 22 2016 96x96
-rw-r--r-- 1 root root 816 сен 23 09:52 icon-theme.cache
-rw-r--r-- 1 root root 27186 май 20 2016 index.theme
drwxr-xr-x 15 root root 4096 май 22 2016 scalable
drwxr-xr-x 3 root root 4096 сен 4 2017 symbolic[/console]

Иконки типов файлов хранятся в каталоге mimetypes:
[console]root@ps1:~# ls -l /usr/share/icons/hicolor/48x48
итого 52
drwxr-xr-x 2 root root 4096 дек 29 2013 actions
drwxr-xr-x 2 root root 4096 дек 29 2013 animations
drwxr-xr-x 2 root root 4096 авг 15 14:13 apps
drwxr-xr-x 2 root root 4096 дек 29 2013 categories
drwxr-xr-x 2 root root 4096 дек 29 2013 devices
drwxr-xr-x 2 root root 4096 дек 29 2013 emblems
drwxr-xr-x 2 root root 4096 дек 29 2013 emotes
drwxr-xr-x 2 root root 4096 дек 29 2013 filesystems
drwxr-xr-x 2 root root 4096 дек 29 2013 intl
drwxr-xr-x 2 root root 4096 дек 29 2013 mimetypes
drwxr-xr-x 2 root root 4096 дек 29 2013 places
drwxr-xr-x 2 root root 4096 дек 29 2013 status
drwxr-xr-x 14 root root 4096 май 22 2016 stock[/console]

P.S. Правилами хорошего тона рекомендуется имена указаывать в нижнем регистре.

12.11.2019 15:57 #433404
"facebreaker" написал:
Иконки по умолчанию (т.е. иконки поставляемые с пакетом) устанавливаются в тему/каталог hicolor. Уже в этой папке смотрите структуру расположения иконок по типам и размерам.

Это понятно. Я же хотел установить именно свою иконку. В этом был смысл.
Добавлено: 12.11.2019 15:57:09

"facebreaker" написал:
Правилами хорошего тона рекомендуется имена указаывать в нижнем регистре.

На счет хорошего тона - не скажу, но в верхнем они у меня просто не читались.

14.11.2019 06:27 #433413
"medusa" написал:
Это понятно. Я же хотел установить именно свою иконку. В этом был смысл.

Если уже расширение зарегистрировано в системе до ваших манипуляций, то надо было просто добавить/заменить иконку в используемую тему.

14.11.2019 07:56 #433414
"facebreaker" написал:
Если уже расширение зарегистрировано в системе до ваших манипуляций, то надо было просто добавить/заменить иконку в используемую тему.

Не спорю. Но мне казалось, что в таком случае изменится вид всех файлов audio. Или я не прав? Тогда Ваше предложение более приемлемое, да и более простое.

14.11.2019 08:02 · отредактировано #433415

medusa, для всех типов файлов использующих заменяемую иконку.

Войдите или зарегистрируйтесь, чтобы ответить.