Учебники (How-To & F.A.Q)

Немного оптимизации и как обойтись без NetworkManager

Предыстория.
Мой старенький ноут грузится за 1 мин 30 сек. Даже для HDD это многовато. Проведя анализ по статье Ускорение загрузки, выяснил, что максимальное время загрузки происходит за счет монтирования /dev/loop* устройств snap пакетов. От них избавиться просто — найти замену из репозиториев или aur. Далее, сравнимые с ними по длительности загрузки оказались avahi и NetworkManager. С первым просто отключаем, не знаю кто им пользуется (почитал в гугле). А вот отказ от NetworkManager это уже история Читать дальше
Учебники (How-To & F.A.Q)

Timeshift - резервное копирование это не сложно

Timeshift — это программа с возможностью инкрементного резервного копирования. Простой, удобный, и на мой взгляд — «обязательный» инструмент, новичков это касается особенно. Как перестать боятся «угробить» систему и начать жить.
Из интернетов:
Инкрементное копирование — это метод копирования, при котором к исходной копии набора данных шаг за шагом приписываются дополнения,
отражающие изменения в данных (эти пошаговые изменения в наборе данных и называются инкрементами).
Это означает что первый снимок делается «долго» так как как копируется все файлы, но вот последующие бэкапы делаются уже какие-то секунды из-за того что программа сравнивает предыдущий бэкап и записывает только изменения. Хотя по сути она копирует старый снимок и записывает новый с изменениями это делается «моментально».
Интересно то, что несколько снимков системы занимают места чуть больше чем один первый бэкап. У меня один раздел 60 GB для бэкапов и после семи(!) сделанных снимков свободного места на разделе осталось 54,4(!) GB. Это при том что каждая папка со снимком у меня весит:
6,6 ГиБ (7 123 874 392)
286 829 файлов, 22 216 вложенных папок
То есть десять снимков по десять гигов не «сожрут» 100GB места.

Установка
Устанавливаем через терминал или пакетным менеджером.
Обновляем систему:
sudo pacman -Syu
Устанавливаем программу:
sudo pacman -S timeshift

Настройка

При первом запуске появляется окно настроек.
Учебники (How-To & F.A.Q): Timeshift - резервное копирование это не сложно.
Оставляем тип снимка RSYNC.

Вкладка Место
Учебники (How-To & F.A.Q): Timeshift - резервное копирование это не сложно.
Здесь выбираем раздел где будут хранится бэкапы. Можно и даже лучше, сделать для этого отдельный раздел. При запуске программы он будет автоматически монтироваться.

Важное отступление!
Если у вас раздел Home очень большой, то давно пора делать отдельный раздел или целый жёсткий под «файлопомойку»где и будут находится папки: Видео, Документы, Загрузки, Изображения, Музыка или какие-то свои. А в Home будут храниться только ссылки на них. К примеру у меня Home 4 Gb, при этом файлов там на один гиг всего. Каталог Home на отдельном разделе это очень удобно, так как при переустановке системы все настройки системы и программ сохраняются там и не придётся всё заново настраивать.
В KDE симлинки делаются лекго. При перетаскивании папки из одной вкладки/окна Dolpin предлагает сделать ссылку.
Или сделать командой в терминале.
К примеру есть скрытый в Home каталог ".wine", который наверняка весит очень много.
Копируем папку ".wine" на раздел с файлопомойкой и переименовываем в Wine для того чтобы каталог был виден в файловом менеджере.
Учебники (How-To & F.A.Q): Timeshift - резервное копирование это не сложно
Удаляем из Home старую папку и делаем символическую ссылку.
Пишем в терминале команду:
ln -s /media/Wine/ /home/ganter/.wine
Первым указывается адрес реального раздела, вторым пишется адрес назначения где будет располагаться сама ссылка.
Эта команда создаст символическую ссылку на папку".wine" которая будет «пониматься» системой как реальная папка.
Учебники (How-To & F.A.Q): Timeshift - резервное копирование это не сложно
Так можно и даже нужно поступить с другими важными или «большими» по объёму каталогами.
Если система выйдет из строя полностью данные никуда не пропадут. Или если придётся устанавливать систему с нуля, то полную работоспособность можно обеспечить очень быстро.
Можно делать по несколько ссылок на один каталог с другими названиями.
ln -s /Media/.wine/ /home/ganter/"Игры винды"

Учебники (How-To & F.A.Q): Timeshift - резервное копирование это не сложно.
И теперь помимо скрытой «папки» ".wine" у нас ещё есть ссылка «Игры винды». Имена ссылкам можно давать любые. Главное не забывать что имена папок с пробелами нужно заключать в кавычки.

Продолжим. Вкладка Расписание
Учебники (How-To & F.A.Q): Timeshift - резервное копирование это не сложно.
Здесь в принципе всё понятно, настраиваем «когда и сколько раз» будем делать бэкапы. Я бы порекомендовал делать это в ручную.

Вкладка Пользователи.
Учебники (How-To & F.A.Q): Timeshift - резервное копирование это не сложно.
Тут выбираем домашние папки пользователей. Лучше выбрать «Включить всё» так как в скрытых папках хранятся настройки системы.

Вкладка Фильтры
Учебники (How-To & F.A.Q): Timeshift - резервное копирование это не сложно.
Здесь можно выбрать какие папки нам нужно ил не нужно восстанавливать. Если добавить нужную папку и поставить "-",
то эта папка останется нетронутой при восстановлении системы. Также и в предыдущей вкладке Пользователи, если мы поставим галочку не включать, к примеру свой домашний каталог, то даже если он изначально был сохранён с этой настройкой он не восстановится.

Главное окно
Учебники (How-To & F.A.Q): Timeshift - резервное копирование это не сложно.
Нажимаем кнопку Создать и делаем бэкап. Снимки можно делать хоть каждый день. Как я писал раннее, все снимки, кроме первого, будут делаться очень быстро.

Восстановление

Для восстановления выбираем снимок и жмём кнопку Восстановить. Появится окно с выбором разделов, если в fstab разделы монтируются по UUID, то сразу будут показаны нужные разделы.
Учебники (How-To & F.A.Q): Timeshift - резервное копирование это не сложно.
Или же выбираем в ручную нужные разделы. Если раздел boot отдельный, то выбираем куда восстановить и его. Если же на системном разделе — оставляем по умолчанию. Нажимаем Далее

Timeshift синхронизирует файлы и выдаст список что будет сделать.
Учебники (How-To & F.A.Q): Timeshift - резервное копирование это не сложно.
Нажимаем Далее.
Во время восстановления рабочий стол пропадёт и на сером фоне будут выводится «отчёты» что именно прого делает… Потом компьютер автоматически перезагрузится.

Настроили систему? Делаем снимок.
Пришли обновы? Делаем перед обновлением снимок.
Решили поковыряться в системе? Делаем сначала снимок.
Драйвера на видео? Делаем сначала снимок.


Восстановление после «апокалипсиса» и те только.

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

И мы уже с правами администратора.
Далее пишем:
pacman -Sy

Эта команда проверит обновления без их установки, нам, в Live режиме, эти гигабайты не нужно.
Устанавливаем знакомой командой Timeshift:
pacman -S timeshift

Восстанавливаем.

Можно при помощи Timeshift перенести систему на новый жёсткий диск. Допустим купили вы SSD. Просто размечаем новый диск, грузимся с флешки и «восстанавливаем» всю настроенную систему. Важно не забыть что нужно будет исправить fstab. Это можно сделать сразу в папке бэкапов timeshift или находясь в режиме Live сразу после переноса системы на новые разделы.

Upd.
Исправил ошибки о создании символических ссылок.
Учебники (How-To & F.A.Q)

Nvidia Prime Render Offload. Замена Bumblebee.

Гайд устарел и его следует использовать если вам просто нечем заняться. В другом случае используйте графический установщик Манджаро. В нём теперь есть драйвер для видеокарты с пометкой «prime»
После его установки, запустить программу на нвидиа можно командой:

prime-run <приложение>

Тихо и без лишнего шума Nvidia запустила нативную поддержку Prime Render Offload для своих видеокарт, работающих в связке со встроенными видеокартами Intel на лэптопах. Это дает возможность владельцам лэптопов выводить графику через видеокарту Intel, а там, где это необходимо, через карту Nvidia. Также данная штука имеет более высокую производительность, по сравнению с полюбившимся многим Bumblebee.
Ниже инструкция о том, как настроить систему для ее использования. Сразу оговорюсь, что буду считать, что система только что установлена и вы не нуждаетесь в удалении предыдущих конфигураций Xorg, Bumblebee и прочего. Также статья является вольным переложением статьи из арчвики с некоторыми дополнениями, применимыми к Manjaro.
На данный момент с данным методом невозможно использовать второй монитор через HDMI, официальный ответ разрабов нвидиа тык, так что подумайте нужно это вам или нет.
1) Ставим драйвера с помощью стандартной утилиты манджаро по этой инструкции.
2) Удаляем конфиг, который создала утилита манджарки:
sudo rm /etc/X11/xorg.conf.d/90-mhwd.conf 

3) Создаем новый конфиг nvidia.conf
sudo nano /etc/X11/xorg.conf.d/nvidia.conf

nvidia.conf
Section "ServerLayout"
  Identifier     "Layout0"
    Option         "AllowNVIDIAGPUScreens"
    Screen      0  "iGPU" 0 0
EndSection
Section "Device"
    Identifier     "iGPU"
    Driver         "modesetting"
    BusID          "PCI:0:2:0" #Проверьте BusID
EndSection
Section "Device"
    Identifier     "dGPU"
    Driver         "nvidia"
    BusID          "PCI:1:0:0" #Проверьте BusID
EndSection
Section "Screen"
    Identifier     "iGPU"
    Device         "iGPU"
    DefaultDepth    24
    SubSection     "Display"
    Viewport    0 0
    EndSubSection
EndSection
Section "OutputClass"
    Identifier "iGPU"
    MatchDriver "i915"
    Driver "modesetting"
EndSection
Section "OutputClass"
    Identifier "dGPU"
    MatchDriver "nvidia-drm"
    Driver "nvidia"
    Option "AllowEmptyInitialConfiguration"
    Option "PrimaryGPU" "yes"
    ModulePath "/usr/lib/nvidia/xorg"
    ModulePath "/usr/lib/xorg/modules"
EndSection

Section "ServerFlags"
    Option         "IgnoreABI" "1"
EndSection


*самая нижняя секция рекомендуется при возникновении проблем при входе. Но на моей Nvidia GeForce 1060 проблема была, поэтому вставил на всякий случай. Если что, закомментируете.
4) Удаляем остатки конфигов, созданных утилитой mhwd (мы ей драйвер если что устанавливали)
ls /etc/modprobe.d/mhwd*

смотрим на вывод предыдущей команды и удаляем все, что связано с nvidia и gpu
Пример! файлов для удаления
sudo rm /etc/modprobe.d/mhwd-gpu.conf
sudo rm /etc/modprobe.d/mhwd-nvidia.conf

5) Перезагружаемся
6) Проверяем, что загрузились оба модуля видеокарт
xrandr --listproviders

должно быть примерно так:
Providers: number: 2
Provider 0: id: 0x29d cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 3 outputs: 2 associated providers: 0 name:modesetting
Provider 1: id: 0x278 cap: 0x0 crtcs: 0 outputs: 0 associated providers: 0 name:NVIDIA-G0

7) Пример запуска Firefox на видеокарте Nvidia
__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME="nvidia" __VK_LAYER_NV_optimus="NVIDIA_only" firefox

В AUR репозитории также доступен пакет «prime», после установки которого громоздкое выражение можно сократить до простого
prime firefox

Ссылки по теме:

Арчвики
Официальная инструкция от Nvidia с примерами более тонкой настройки
Учебники (How-To & F.A.Q)

Как заставить работать видеодрайвер Nvidia на лэптопах с двумя видеокартами Intel+Nvidia

Здесь я приведу пример как можно заставить видеокарту Nvidia работать всегда.
Это всего лишь вольный перевод статьи, поэтому перед прочтением ознакомьтесь с оригиналом, а также с видео на ютьюб тут
Буду считать, что все действия производятся на только что установленной системе и удалять другие драйвера вам не нужно.
1) Ставим драйвер nvidia. Для этого не будем изобретать велосипед и воспользуемся статьёй тут
2) Удаляем конфиг, который создала утилита манджарки.
sudo rm /etc/X11/xorg.conf.d/90-mhwd.conf 

3) Создаем новый конфиг optimus.conf
sudo nano /etc/X11/xorg.conf.d/optimus.conf 

optimus.conf
Section "Module"
		Load "modesetting"
	EndSection

	Section "Device"
		Identifier "nvidia"
		Driver "nvidia"
		BusID "PCI:1:0:0"
		Option "AllowEmptyInitialConfiguration"
	EndSection 


4) Удаляем остатки файлов в директории /etc/modprobe.d/ от утилиты mhwd
ls /etc/modprobe.d/mhwd*

смотрим на вывод предыдущей команды и удаляем только файлы, которые имеют в своем имени nvidia или gpu
Пример! удаления файлов
sudo rm /etc/modprobe.d/mhwd-gpu.conf
sudo rm /etc/modprobe.d/mhwd-nvidia.conf

5) Создаем новый конфиг nvidia.conf:
sudo nano /etc/modprobe.d/nvidia.conf

nvidia.conf
blacklist nouveau
blacklist nvidiafb
blacklist rivafb

6) Включаем nvidia-drm.modesetting, создав файл:
sudo nano /etc/modprobe.d/nvidia-drm.conf

nvidia-drm.conf
options nvidia_drm modeset=1

7) Дальше действия зависят от вашего DE и менеджера входа.
LIGHTDM --------->8-10 -->15
GDM --------->11-12 -->15
SDDM --------->13

LIGHTDM

8) Создаете новый файл optimus.sh:
sudo nano /usr/local/bin/optimus.sh

optimus.sh
#!/bin/sh
xrandr --setprovideroutputsource modesetting NVIDIA-0
xrandr --auto

9) Делаете файл исполняемым:
sudo chmod a+rx /usr/local/bin/optimus.sh

10) Находите секцию display-setup в конфиге lightdm.com
sudo nano /etc/lightdm/lightdm.conf

заменяете секцию display-setup на:
display-setup-script=/usr/local/bin/optimus.sh

GDM

11) Создаете новый файл optimus.desktop
sudo nano /usr/local/share/optimus.desktop

optimus.desktop
[Desktop Entry]
Type=Application
Name=Optimus
Exec=sh -c «xrandr --setprovideroutputsource modesetting NVIDIA-0; xrandr --auto»
NoDisplay=true
X-GNOME-Autostart-Phase=DisplayServer

12) Создаете линки к GDM login
sudo ln -s /usr/local/share/optimus.desktop /usr/share/gdm/greeter/autostart/optimus.desktop
sudo ln -s /usr/local/share/optimus.desktop /etc/xdg/autostart/optimus.desktop

SDDM

13) Создаете новый файл Xsetup
sudo nano /usr/share/sddm/scripts/Xsetup

Xsetup
#!/bin/sh
xrandr --setprovideroutputsource modesetting NVIDIA-0
xrandr --auto

14) Делаете его выполняемым
sudo chmod a+rx /usr/share/sddm/scripts/Xsetup

Для всех

15) Перезагружаетесь.
16) После перезагрузки проверяете что выводит картинку:
glxinfo | grep -i vendor


PS. Способ проверен на лэптопе MSI GP72MVR 7RFX с Nvidia GTX 1060 + Intel HD 630 и установленной Manjaro KDE.
Учебники (How-To & F.A.Q)

Перенастройка кнопок мыши.

Здравствуйте.
Если кому будет интересно, ниже — способ перенастроить кнопки мыши.
Предыстория:
используя мышку в windows, привык, что две дополнительные боковые кнопки на ней осуществляют скроллинг страницы браузера firefox. Связано это было с плохой работой колеса — вот я и настроил их так в фирменном приложении мыши. Очень уж мне хотелось сделать также в Linux. Ниже — описание, как я это сделал (возможно кому-то будет полезным).

//ставим две утилиты xorg
sudo pacman -S xorg-xinput 
sudo pacman -S xorg-xev
//запускаем одну из них и прощелкиваем-прокручиваем все кнопки-колеса мыши, запоминаем цифры для каждой кнопки
xev | grep button
//смотрим список устройств ввода
xinput list
//находим нужное (в моем случае - 8) и на всякий случай смотрим для него список всех кнопок 
xinput get-button-map 8
//в моем случае вывод такой: 1 2 3 4 5 6 7 8 9
//меняем кнопки для устройства 8, заменив 8 и 9 на 5 и 4 соответственно
xinput set-button-map 8 1 2 3 4 5 6 7 5 4
//заводим эту команду в автозагрузку системы, создав файл mouse.desktop приблизительно такого содержания:
[Desktop Entry]
Encoding=UTF-8
Type=Application
Name=mouse
Exec=xinput set-button-map 8 1 2 3 4 5 6 7 5 4
StartupNotify=false
Terminal=false
Hidden=false
//закидываем этот файлик в папку: /home/usename/.config/autostart
//ставим атрибуты на выполнение (правый щелчок мыши по файлу и свойства).

Все работает, теперь боковые кнопки мыши делают то же, что и колесо мыши — их нажатие приводит к скроллингу страницы браузера например.
Буду рад услышать комментарии или более простые пути реализации задачи. Не судите строго — мои познания далеки от ПРО-уровня)
Учебники (How-To & F.A.Q)

Решение проблемы со значками для тёмных тем (отсутсвие, тёмное на тёмном) [KDE]

Если вы используете тёмный вариант оформления KDE и не дефолтный набор значков, возможно некоторые из иконок(кнопок) стали плохо читаемыми на тёмном фоне либо вообще отсутствуют. Это можно исправить, установив альтернативный (резервный) вариант значков для тёмной темы. Для этого просто в директории с вашим набором иконок =>
~/.local/share/icons/[ваш набор иконок]/

открываем файл index.theme и редактируем строку
Inherits=breeze-dark,Surfn,Numix

вписав в начало списка название желаемого альтернативного набора значков.

Если файла нет, то создаём его с похожим содержимым (редактируйте под ваш вариант):
[Icon Theme]
Name=Zafiro-icons-green
Comment=icon theme flat for gnome,xfce and lxde
Comment[es]=tema de iconos planos y sobrios.
Comment[zh_TW]=清醒和平面图标的主题
Inherits=breeze-dark,Surfn,Numix,Numix-Circle-Light,Numix-Circle,breeze,gnome,hicolor
Directories=apps/scalable/


Скриншоты до и после:
Скриншоты
Установлен набор Zafiro, применяется набор breeze как резервный:
Учебники (How-To & F.A.Q): Решение проблемы со значками для тёмных тем (отсутсвие, тёмное на тёмном) [KDE]
Установлен набор Zafiro, применяется набор breeze-dark как резервный:
Учебники (How-To & F.A.Q): nice


ЗЫ: Кстати, у набора Zafiro установленного из файла (архива), скачанного отдельно из store.kde, есть папка places/16-A со светлыми значками для тёмной темы, и чтобы она применилась, нужно в index.theme заменить соответствующие указания places/16
А дальше можно найти названия и расположение недостающих иконок из /usr/share/icons/breeze-dark/ и переименовать подходящие из основного набора, отредактировать(inkscape'ом например), сделать симлинк или вообще нарисовать свои.
Учебники (How-To & F.A.Q)

Установка пароля на XAMPP.

1. Заходим в phpMyAdmin.

2. Открываем вкладку «SQL» вставляем команду в окно UPDATE user SET Password=PASSWORD('Ваш пароль')WHERE User='root' и жмем «ВПЕРЕД»

3. Идем по пути opt/lampp/phpmyadmin/config.inc.php меняем конфиг.

<?php
/* vim: set expandtab sw=4 ts=4 sts=4: */
/**
* phpMyAdmin sample configuration, you can use it as base for
* manual configuration. For easier setup you can use setup/
*
* All directives are explained in documentation in the doc/ folder
* or at <docs.phpmyadmin.net/>.
*
* @package PhpMyAdmin
*/

/**
* This is needed for cookie based authentication to encrypt password in
* cookie. Needs to be 32 chars long.
*/
$cfg['blowfish_secret'] = 'xampp(xampp — Заменяем на 25-ти значные символы)'; /* YOU SHOULD CHANGE THIS FOR A MORE SECURE COOKIE AUTH! */

/**
* Servers configuration
*/
$i = 0;

/**
* First server
*/
$i++;
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'config (config — заменяем на cookie)';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'Ваш пароль';
/* Server parameters */
//$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['AllowNoPassword'] = true (true — заменяем на false);

4. Перезапускаем XAMPP.
Учебники (How-To & F.A.Q)

Установка XAMPP 7.3.3 на Linux Manjaro

1. Загрузить XAMPP 7.3.3:

wget -c www.apachefriends.org/xampp-files/7.3.3/xampp-linux-x64-7.3.3-0-installer.run

2. Установите разрешение:

sudo chmod +x xampp-linux-x64-7.3.3-0-installer.run

3. Запустите установку Xampp 7.3.3 от имени пользователя root:

./xampp-linux-x64-7.3.3-0-installer.run

4. Запуск Xampp:

sudo /opt/lampp/lampp start ## starts xampp server
sudo /opt/lampp/lampp stop ## stops xampp server
sudo /opt/lampp/lampp restart ## restarts xampp server
Учебники (How-To & F.A.Q)

Обновление Manjaro Linux через терминал.

Обновление операционной системы Manjaro через эмулятор терминала.

1. Поиск зеркал: (Серверов)

sudo pacman-mirrors -g

2. Обновление системы: (Полное обновление)

sudo pacman -Syyuu

3. Установка ключей: (////////)

sudo pacman-key --init
sudo pacman-key --populate archlinux manjaro