среда, 31 августа 2022 г.

Эмблемы от FreeOffice + papirus

 Эмблемы от Free Office взяты из комплекта изображений каталога Bullets, создаваемого при установке бесплатного офисного пакета Softmaker FreeOffice. Эмблемы papirus представлены эмблемами папок разных цветов из набора иконок для оформления KDE.

🔰  Примечание. Эмблемы могут быть применены для пометки папок (каталогов) в файловых менеджерах Thunar, Nemo, Nautilus .. , при оформлении дополнительных элементов главного меню, правого контекстного меню менеджеров файлов, в некоторых случаях – как альтернатива значков кнопок запуска и ссылок URL.


Эмблемы Free Office

Стрелки  (arrow-1 и arrow-2)



Скачать наборы:  arrow-1  arrow2



Галочка  (checkmark)



Скачать набор checkmark


Шеврон  (chevron)



Скачать набор chevron


Алмаз  (diamond)



Скачать набор diamond


Алмаз X  (diamond-X)



Скачать набор diamond-X


Диск  (disc)



Скачать набор disc


Шестиугольник  (hexagon)



Скачать набор hexagon


Пятиугольник  (pentagon)



Скачать набор pentagon


Треугольник  (triangle)



Скачать набор triangle


Крестик  (X)



Скачать набор x-emblems


Набор  Folder (papirus)




Скачать набор folder-p

Скачать все указанные выше эмблемы


Как добавить эмблемы в своё пользовательское окружение

Включите в своём менеджере файлов отображение скрытых файлов. Перейдите в своём домашнем каталоге в каталог ~/.local/share и создайте в нём каталоги icons и gnome.

🔰  Примечание.  Если вами устанавливался Telegram, то не исключено, что каталог icons у вас уже существует. Пример:


Из каталога  /usr/sharre/icons/gnome  скопируйте в созданный вами каталог gnome файлы  icon-theme.cache  и  index.theme

Поместите выбранный вами распакованный вами из архива набор в каталог gnome. Если вами выбрано несколько наборов, то добавляйте из его папок файлы в уже существующие каталоги  16x16, 22x22, 24x24, 32x32, 48x48

Чтобы изменения вступили в силу выполните в терминале команду 

  gtk-update-icon-cache /home/minter/.local/share/icons/gnome/

подставив вместо minter имя вашего домашнего каталога.

При обращении в свойствах папки к секции "Эмблемы" у вас должны отображаться новые эмблемы.

пятница, 19 августа 2022 г.

Посчитать число файлов fb2 в выбранной папке (скрипт для XFCE)

У меня часто возникает необходимость подсчитать в той или иной папке число книг fb2, что необходимо для приведения своей домашней библиотеке в порядок.

Для подсчёта используется сценарий (скрипт на bash), состоящий из двух команд:  1) найти в выделенной папке число файлов fb2 и полученный результат записать в файл;  2) прочитать содержание записанного файла и вывести его на экран всплывающим сообщением (по терминологии системы – оповещением). 

Возможно, что код может быть более корректным. Сценарий формировался на скорую руку и является "самопальным" творением.

Так как мной используется графическое окружение XFCE, то сценарий оформляется в виде особого действия файлового менеджера Thunar. Пример особого действия можно посмотреть здесь.

Подсчёт fb2 и запись полученного результата в файл:

find %f -name "*.fb2" | wc -l > /tmp/count-books.txt

Чтение файла txt и вывод его содержания во всплывающее сообщение на экране:

count=`cat /tmp/count-books.txt`
notify-send  --expire-time=8000 "  fb2  в папке – $count  "

Пояснение. --expire-time=8000 означает, что длительность отображения всплывающего уведомления составляет 8 секунд. По умолчанию система устанавливает 5 секунд, поэтому 8 секунд были выбраны специально, чтобы, с одной стороны, "успеть сообразить" о чём ведётся речь, а с другой – чтобы уведомление не сильно долго отображалось, отвлекая внимание. Значение указывается в миллисекундах, поэтому выбранное число секунд умножается на 1000.

Совмещение всех команд осуществляется через указание действия &&. Вторая часть сценария (скрипта на bash) "обёртывается" в $(...)

Результирующая команда имеет вид (в одну строку):

find %f -name "*.fb2" | wc -l > /tmp/count-books.txt && $(count=`cat /tmp/count-books.txt` && notify-send  --expire-time=8000 "  fb2  в папке – $count  ")

В условиях появления "особого действия" в правом контекстном меню Thunar ставится галочка в поле "Каталоги".

Можно добавить "красивости", выражающейся в том, что при выводе перед текстом будет отображаться выбранный значок. Значок придётся выбирать размером в 48 пикселей, поскольку при меньшем размере он будет принудительно увеличиваться и восприниматься немного размытым.  Например, команда отображения значка:

--icon=/usr/share/icons/Mint-Y/apps/48/fbreader.png

Соответственно, команда вывода всплывающего сообщения со значком будет иметь вид:

notify-send  --expire-time=8000 --icon=/usr/share/icons/Mint-Y/apps/48/fbreader.png "  fb2  в папке  –  $count  "

Небольшой демонстрационный ролик – перейти.

📍 Таким же образом можно создать особое действие для подсчёта всех файлов в выделенной папке. Для этого вместо команды

find %f -name "*.fb2" | wc -l >

использовать команду

find %f -type f | wc -l > 

воскресенье, 14 августа 2022 г.

Пакетное (массовое) переименование файлов

Задача: переименовать файлs, убрав из их наименований лишние символы. Приводимый пример описывает массовое переименование файлов LifeNewsMixImag-...

Так как используемое мной графическое окружение XFCE, то пример производится для плагина файлового менеджера Thunar Bulk Renamer.  Для других дистрибутивов должно быть что-то похожее, но в данной заметке это не рассматривается по причине отсутствия у автора подобного.

Вызовите через секцию "Инструменты" главного меню пункт "Массовое переименование". Для добавления файлов на обработку нажмите на кнопку "плюс". 



Чтобы в именах всех файлов убрать LifeNewsMixImag- укажите операцию удаления символов с 0 до 16 (подлежащее удалению как раз и составляет 16 символов).



Чтобы было видно как будет выглядеть новое имя щёлкните курсором мыши по любому из файлов списка. Если по ошибке добавлен не тот файл, то выделить его имя и нажать на кнопку "минус". После нажатия кнопки "Переименовать файлы" в окне будут отображены файлы с новыми именами.



Теперь стоит задача удаления из имён файлов одного символа подчёркивания. Так как символы подчёркивания являются 5 и 6 символами, то аналогичным образом указывается удаление с 5 до 6. После второй операции (Переименовать файлы) все файлы будут с желаемыми именами.




Альтернативное решение – осуществить переименование через bash.

среда, 10 августа 2022 г.

Добавить поддержку webp в Linux Mint 20

В Linux Mint 21 поддержка файлов webp уже внедрена. Для добавления поддержки webp в Lnux Mint 20, чтобы их можно было бы открывать не в браузере, а в программе просмотра файлов, выполнить в терминале 2 команды: 

 sudo add-apt-repository -y ppa:krifa75/eog-ordissimo

sudo apt update && sudo apt install webp-pixbuf-loader

Найдите сохранённый файл webp, вызовите на нём правок контекстное меню мыши, выберите "Открыть с помощью", и укажите "Просмотр изображений" и поставьте галочку в поле использовать по умолчанию. После этого все файлы webp в дальнейшем будут открываться в программе просмотра изображений.



понедельник, 20 июня 2022 г.

Невозможно отрегулировать ширину окна Transmission

При добавлении некоторых торрентов (замечено на Rutracker) имя файла скачиваемого контента настолько длинное, что может расширять окно клиента Transmission до 2/3 ширины экрана и более. В дальнейшем изменить мышкой размер окна по горизонтали клиента Transmission временами бывает невозможно.

Закройте клиент Transmission. Обратитесь к файлу настроек Transmission settings.json, который расположен в скрытом каталоге .config/transmission Вашего домашнего каталога. Или откройте этот файл в текстовом редакторе через команду терминала:  

xed /home/user/.config/transmission/settings.json

user – приводимый как пример домашний каталог пользователя с логином user

Найдите строку, которая указывает на ширину окна, "main-window-width": и измените после двоеточия цифру, указывающую размер окна в пикселях. 

Например, после добавления одного из торрентов это значение у меня составило  1198. После его изменения на 620 в моём случае Transmission запустился с приемлемой для меня шириной окна.

среда, 20 апреля 2022 г.

Загрузка Linux Mint с возможностью выбора предыдущих ядер

На днях для проверки работы устройства понадобилось загрузить систему с возможностью выбора предыдущей версии ядра (а по возможности, чтобы можно было выбрать и предыдущее от предыдущего). 

К сожалению, ранее известный мне предыдущий способ не сработал. Быстрый поиск в сети выдал огромное число "рецептов", среди которых наименее "страшным" своими последствиями мне показался следующий.

🔰  Примечание. К сожалению, не имею возможности сослаться на первоисточник, так как ссылка на ресурс не была сохранена. Поэтому далее приводятся только осуществлённые мной действия с минимумом пояснений.

1. Открыть в текстовом редакторе файл настройки grub: 

       sudo xed /etc/default/grub

2. В первой строке настроек (после всех строк, начинающихся с символа #) заменить:

       GRUB_DEFAULT=0  на  GRUB_DEFAULT=saved

3. Во второй строке заменить

      GRUB_TIMEOUT_STYLE=hidden  на  GRUB_TIMEOUT_STYLE=menu

4. В третьей строке заменить время ожидания выбора пункта меню

      GRUB_TIMEOUT=0  на  GRUB_TIMEOUT=10

10 соответствует 10 секундам счётчика обратного отсчёта. По-моему, это будет достаточной величиной, так как 30 – это слишком много, а 5 – слишком мало.

5. Обновить grub – sudo update-grub

6. При следующей загрузке системы отобразится окно выбора. Например, в моей системе это 2 строки: "Linux Mint 20.3 Xfce" и "Дополнительные параметры для Linux Mint 20.3 Xfce". Первый пункт соответствует выбору самого последнего (свежего) ядра в системе, а второй даёт возможность выбора загрузки с одним из выбранных предыдущих ядер.

Если ничего не делать, то по завершении счётчика обратного отсчёта автоматически будет выбран самый первый (верхний) пункт. При выборе второго пункта появится окно, в котором будут перечислены все установленные в вашей системе предыдущие ядра. 

🔰  Примечание. Иногда таких ядер становится очень много. Наличие их чрезмерного числа занимает место на вашем жёстком диске без пользы. В этом случае рекомендуется производить периодическую очистку системы от "лишних" ядер и сопутствующих им модулей.

На момент публикации этого текста у меня в системе были установлены ядра версий 5.4.0-109, 5.4.0-107, 5.4.0-105. Соответственно, имеется возможность загрузки с любым из предыдущих ядер: 5.4.0-107 или 5.4.0-105.
 

вторник, 5 апреля 2022 г.

Открыть в fbless книгу fb2 через правое контекстное меню в Thunar

Иногда возникает необходимость быстро просмотреть начало книги. К тому же, неплохо иметь в своём арсенале ещё одну читалку, особенно когда читаешь несколько книг "одновременно" (то есть периодически переключаясь с книги на книгу) в разных читалках (например, fbreader, foliate, coolreader), и "терять" в одной из читалок возможность при запуске определённой читалки ставиться на последнее прочитанное место не хочется.

Консольную читалку, то есть запускаемую в окне терминала можно установить командой sudo apt install fbless 

Сразу оговорюсь, что файла настроек и кэша, как описано здесь и здесь, на своей системе Linux Mint 20.3 найдено не было. Тем не менее, читалка была признана рабочей.

Однако использование команды fbless путь_к_книге навевало определённую тоску 😟

В результате было принято решение попробовать открыть файл с помощью fbless через правое контекстное меню файлового менеджера Thunar.

Но оформленная через "Особое действие" (пример создания) команда

 xfce4-terminal -H -x sh -c 'fbless %f; exec bash'

при открытии для эксперимента книги /home/minter/01/Хроники особого отдела.fb2 завершалась неудачей.

Вывод через терминал показывал ошибку в python3, из которого было понятно, что

[Errno 2] Нет такого файла или каталога: '/home/minter/01/Хроники'

Добавление кавычек в путь "%f" приводило к пустому окну терминала с заголовком "Дочерний процесс завершился нормально с кодом 2."

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

Хроники особого отдела.fb2 --> Хроники-особого-отдела.fb2 - команда отрабатывалась нормально и книга открывалась.

Таким образом было понятно, что "особое действие" не понимает длинных путей в именах файлов и каталогов.

Тогда было решено получить полный путь к имени файла, а затем считать его и передать при запуске fbless. В приводимом ниже примере полученный полный путь записывается с файл /tmp/fbless.txt, а затем передаётся в читалку как $(cat /tmp/fbless.txt) в кавычках.

Команда в одну строку:

realpath %f > /tmp/fbless.txt && xfce4-terminal  -H -x sh -c '/usr/bin/fbless "$(cat /tmp/fbless.txt)"; exec bash'

При этом учитываюся как длинное имя (т.е. содержащее пробелы) файла, так и каталога. Для примера приводится открытие этой командой файла 

/home/minter/Загрузки/pCloud/Avtors/Дмитрий Леонидович/Проект "Пассионарность"/1. Судья.fb2

Однако, по совету более опытного товарища, вместо команды

xfce4-terminal -H -x sh -c 'fbless %f; exec bash'

необходимо вводить команду 

xfce4-terminal -H -x sh -c "fbless %f; exec bash"

Другими словами, вместо одинарных использовать двойные кавычки.

Но в дальнейшем захотелось бóльшего. Читалка fbless может сразу открываться в место книги, которое обозначено процентами.


В таком случае команде необходимо задать ещё и параметр -g, после которого числом указать нужное значение %, например, -g 15

Далее приводится решение "для себя". Оно не является программистским, так как его первая часть была заимствована из готового решения (источник дано забыт) ввода значений с использованием zenity.


Идея. 

1. Запрос ввода значения % соответствует "Да". Указывается ожидание времени выбора. Если за это время никакая кнопка нажата не была, то считается, что была нажата кнопка "Нет".

2. Вводится значение (цифра), которая записывается в файл, например в /tmp/proc.txt  Если в предыдущем п.1 была нажата кнопка "Нет" (или выбрана по умолчанию после истечения времени выбора), то в /tmp/proc.txt записывается значение 0, что условно соответствует началу книги.

3. Далее используется команда для открытия книги с подстановкой считанного из файла значения, что для рассматриваемого примера осуществляется через 

$(cat /tmp/proc.txt)

Заимствованное готовое решение, оформляемое в виде исполняемого файла sh имеет листинг:

#!/bin/bash
zenity --width=180 --height=50 --question --text="Перейти на место,\nобозначенное % ?$task" --timeout 5
answer=$?
if [ "$answer" -eq 0 ]; then
    zenity --width=100 --title  "Ввод цифры" --text-info --editable > /tmp/proc.txt
elif [ "$answer" -eq 1 ]; then
    echo '0' > /tmp/proc.txt
elif [ "$answer" -eq 5 ]; then
    echo '0' > /tmp/proc.txt
fi
exit

За время ожидания выбора отвечает параметр -- timeout 5  В приведенном случае это соответствует 5 секундам. Экспериментальным способом вместо 5 можно подобрать удобное для своего использования значение.

🔰  Пояснение. Кнопке "Да" соответствует -eq1, кнопке "Нет" – -eq0, а выбор по умолчанию всегда будет -eq5. 

Увы но рабочий результат выполнения команды получился только с использованием тех "костылей", которые приводились в самом начале, то есть с применением realpath %f

Сначала выполняется скрипт получения значения процентов прочитанного, а потом собственно и запуск читалки с указанием этих процентов через параметр -g

путь_к_sh && xfce4-terminal -H -x sh -c "fbless %f -g $(cat /tmp/proc.txt); exec bash"

или (по первому варианту)

путь_к_sh && realpath %f > /tmp/fbless.txt && xfce4-terminal  -H -x sh -c '/usr/bin/fbless "$(cat /tmp/fbless.txt)" -g $(cat /tmp/proc.txt); exec bash'

🔰  Примечание. Следует отметить, что при вводе, например, значения 11 (11% книги), книга откроется именно в начале 11 %, но в книге отображаться будут 10%. 11 процентов начнутся тогда когда вы перейдёте на следующую строчку текста книги. 

Так как целочисленное значение % может соответствовать 2-3 страницам текста книги, то это может вызывать неудобство или раздражение. 

Выходом могло бы служить использование механизма закладок, которые записывается в файл fbless_save  Автоматически у меня он не создавался. Его приходилось создавать вручную здесь  ~/.fbless_save  или здесь  ~/.cache/fbless/fbless_save  Сведения о его местоположении взяты из этой публикации. Но как создать в fbless закладку мне неизвестно.

Официальную документацию для fbless читайте в файле /usr/share/doc/fbless/README.ru

✔  В качестве дополнения. Используя параметр -g 100 можно перейти в самый конец книги и узнать, является ли это окончанием всего цикла, окончанием отдельного тома или вообще ознакомительным фрагментом книги. Если необходимо это делать часто, то для этого можно создать дополнительное особое действие с командой:

xfce4-terminal  -H -x sh -c "fbless -g 100; exec bash"