Сайт | Скачать | Видео | Wiki

Автор Тема: Archman Linux + Ventoy + менеджер мрдулей + программ для создания этих модулей.  (Прочитано 623 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн totiks2012

  • Ветеран
  • *****
  • Сообщений: 922
  • Репутация: +24/-0
  • Автор темы
Как то загорелся я проверить как будет работать менеджер модулей использующий симлинки,
а так же как и какими инструментами эти модули создавать в среде  дистрибутива Arch Linux.
Так как заморачиватся с установкой не хотелось , тем более что у меня установлен на компе Ventoy,и давно
хотелось протестировать persistens режим , все звёзды сошлись, то выбор пал на Archman Linux,
брать тут https://sourceforge.net/projects/archman-os/files/stable-iso/
в причину того что он поддерживает работу в persistens режиме.
можно взять и этот  ctlos  , тем более он локализован из коробки
брать тут https://ctlos.github.io/ 
читать про него тут https://ctlos.github.io/wiki/
в конфиге ventoy.json поменять имя iso образа и всё...

upd: (на самом деле Archman не виноват в пропаже звука, подозреваю что тут причина в том что используя дистрибутив в режиме live cd при обновлении ядра не обновились корректно модули нового ядра , если ядро не обновлять звук работает)
На установке Ventoy не буду останавливаться, о Ventoy  на форуме говорилось не раз.

  Для того чтоб задействовать  persistence необходимо озаботится созданием специального подготовленого 
файла образа persistence.dat ,для этого необходимо в терминале по пути в каталоге со скриптами Ventoy ввести
 команду 

Код
./CreatePersistentImg.sh -s 4024 -t ext4 -l vtoycow -o persistence.dat

обратим внимание на следующие параметры в этой команде

4024--это размер в мегабайтайх файла образа persistence.dat

vtoycow--имя раздела в persistence.dat

Его следует выбрать для Arch Linux

для Fedora он --vtoycow
для Mint,Ubuntu --casper-rw
для Kali--persistence
для MX Linux--MX-Persist

после создания persistence.dat необходимо перейти в каталог  Ventoy,
подчеркну в каталог в котором мы скопировали iso образ Archman Linux,
и создадим каталог с именем ventoy,
в нем необходимо создать текстовой файл с именем ventoy.json и прописать в нем конфигу

Код
{
    "persistence" : [
        {
            "image": "/Archman_Xfce-20240501.iso",
            "backend": "/persistent/persistence.dat"
        }
    ]
}

а также в каталоге Ventoy  создать новый каталог с именем persistent, и в него скопировать файл образ persistence.dat

upd: А что если возникнет такая ситуация что  в каталоге Ventoy вы хотите использовать 2 или 3 дистрибутива с режимом persistent
для этого нужно создать свой каталог  для каждого дистрибутива и в него поместить каталог с  persistence.dat соответсвено всё это  прописать в
конфигу ventoy.json из каталога ventoy вот так
upd2: обновил код для ventoy.json для нескольких дистрибутивах теперь правильно
Код
{
    "persistence" : [
        {
            "image": "/ctlos/ctlos_v2.4.6_20240520.iso",
            "backend": "/ctlos/persistent/persistence.dat"
        },
        {
            "image": "/archman/Archman_Xfce-20240501.iso",
            "backend": "/archman/persistent/persistence.dat"
        }
    ]
}
   
теперь можно использовать несколько дистрибутивов с режимом persistent и сесси будут сохранять изменения  каждая в свой файл в соотвествующем каталоге.
и теперь по сути всё готово для загрузки Аrchman Linux в режиме сохранения сессии ,
 хочу добавить что размер persistence.dat я сделал в 15000 мегабайт, а вообще нужно попробовать задать гигабайт на 25-30.(делал для ssd)
Все сказаное справедливо для установленого Ventoy что на флэшку что на жёсткий диск.
На удивление Archman Linux в своей работе быстрый, не ожидал.
Пост последовательно будет расширятся и состоять из нескольких сообщений далее будет тема
о том как создать модули из pacman для подключения в систему с помощью mod_man .
« Последнее редактирование: 19 Июнь 2024, 13:43:10 от totiks2012 »

Оффлайн totiks2012

  • Ветеран
  • *****
  • Сообщений: 922
  • Репутация: +24/-0
  • Автор темы
Для того чтоб использовать Универсальный менеджер монтирования модулей без aufs , overlayfs. отсюда https://forum.puppyrus.org/index.php?topic=24216.45 смотреть ответ #56
, необходимо эти модули получить для этого был написан скрипт pac2sb
использовать так в терминале  по пути домашней директории
Код
./pac2sb geany
в каталоге ~/portapps создаст каталог с ресурсами geany и модуль  geany.sb
модуль следует переместить в каталог ~/modules
привожу код скрипта
Код
#!/bin/bash

set -x

# Проверка наличия аргумента
if [ -z "$1" ]; then
    echo "Использование: $0 <package_name>"
    exit 1
fi

# Имя пакета
package_name=$1
cd ~/portapps
rm -rf ./$1
# Каталог для создания портативного приложения
app_dir=~/portapps/$package_name

# Создание каталога
mkdir -p "$app_dir"

# Обновление базы данных пакетов желательно делать один раз, потом сидеть на этой базе
#sudo pacman -Sy

# Скачивание пакета в указанный каталог
sudo pacman -Swq --overwrite='*' --cachedir="$app_dir" $package_name

# Извлечение содержимого пакетов
cd "$app_dir"
for package_file in *.pkg.tar.zst; do
    sudo bsdtar -xf "$package_file" -C "$app_dir"
done

# Удаление пакетов
sudo rm -f $app_dir/*.pkg.tar.zst
sudo rm .BUILDINFO
sudo rm .MTREE
sudo rm .PKGINFO
sudo rm ./*.pkg.tar.zst.sig
# Удаление ненужных файлов и директорий
cd "$app_dir/usr/share/"
sudo rm -rf ./fonts
sudo rm -rf ./locale
sudo rm -rf ./doc
sudo rm -rf ./man

# Возврат в каталог с портативными приложениями
cd $HOME/portapps/

# Создание SquashFS
mksquashfs ./"$1" ./"$1".sb -comp gzip -b 256K -Xcompression-level 9

echo "Портативное приложение $package_name создано в $app_dir"


если в репе pacman приложение не было найдено можно попробовать добавить репозиторий  chaotic-aur
инструкция взята отсюда https://aur.chaotic.cx/
для этого
Код
 pacman-key --recv-key 3056513887B78AEB --keyserver keyserver.ubuntu.com
pacman-key --lsign-key 3056513887B78AEB
pacman -U 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-keyring.pkg.tar.zst'
pacman -U 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-mirrorlist.pkg.tar.zst'
после открыть
Код
sudo nano /etc/pacman.conf
и в секции репозиториев
прописать
Код
[chaotic-aur]
Include = /etc/pacman.d/chaotic-mirrorlist
сохранить
после  обновить список репозиторий
и теперь пакеты будут доступны и из репозитория chaotic-aur

если у вас в системе установлен peco
то можно воспользоватся скриптом для облегчения выбора и создания модуля в ~/portapps
вот код
Код
#!/bin/bash
#sudo pacman -Sy
insta_pack="$(pacman -Slq | peco )"
cd ~
./pac2sb "$insta_pack"
 
подвесить этот скрипт на горячую клавишу командой xfce4-terminal -e "/path/to/script/insta_pack.sh"
и теперь при нажатии этой клавиши появится интерфейс peco, в котором достаточно ввести имя пакета из которого хотим сделать модуль, выбрать его при необходимости и нажать ввод, модуль будет собран в ~/portapps

upd: Думаю будет правильно если код этих двух скриптов обьеденить в один, и его подцепить на горячую клавишу.
« Последнее редактирование: 08 Июнь 2024, 11:05:58 от totiks2012 »

Оффлайн totiks2012

  • Ветеран
  • *****
  • Сообщений: 922
  • Репутация: +24/-0
  • Автор темы
пришел к выводу, что в голову иногда приходят странные мысли, для ролинга вся эта тема с модулями плохая идея, и теперь понимается почему sfs заморозил репу, возникает вопрос а как это сделать? иду искать...

Оффлайн knn

  • Ветеран
  • *****
  • Сообщений: 2609
  • Репутация: +33/-0
... заморозил репу, возникает вопрос а как это сделать?...
- на debdog~е заморозил в - 'iso'/modules/77-aptSnpsht-231202-32.squashfs
(грубо говоря - это дебдоговский--"Меню"-->"Система"-->"Repository Configuration" + предзакачал кеш и либы апт. )
... как именно для арчмана делать - не знаю, но возможно - по аналогии ...
как понимаю нужны  'адреса замороженной репы'
-----------
зы
'iso-с-доп-багфиксами' выложу попозже.
и еще смотреть нужно - похоже на то, что 'предзакаченые кеш и либы' иногда другими слоями перекрываются...
=========
upd:
на всякий, отдельн. янд-ссылка на 77-aptSnpsht-231202-32.squashfs
« Последнее редактирование: 07 Июнь 2024, 20:10:40 от knn »
Gr4D, Grub2; HP Mini 210 VT - Intel Atom N470  @ 1.83GHz, Intel GMA3150, RAM=2 ГБ ;
Sams-n110: N270 - 1,6 ГГц, Intel GMA 950, RAM=2 ГБ.

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5393
  • Репутация: +143/-1
sfs заморозил репу, возникает вопрос а как это сделать?
Здесь для свободного скачивания старенькие iso. Арч - pra*.iso и prar*.iso. Смотреть /etc/pacman.conf, /etc/pacman.d.

-----------------------------------------------------------------------------------
А с другой стороны, в теории, :) можно обойтись и без заморозки, если не делать pacman -Sy, или нет? Вроде ж не должно мешать?
Но на это могут ответить только арчеводы со стажем.

Оффлайн knn

  • Ветеран
  • *****
  • Сообщений: 2609
  • Репутация: +33/-0
А с другой стороны, в теории, :) можно обойтись и без заморозки, если не делать pacman -Sy, или нет? Вроде ж не должно мешать?...
- имхо, наверно имеет значение - чтоб "обновлялки-для-реп" не были вшиты в утилиты (пр. для ddog: synaptic, apt2sfs)
Gr4D, Grub2; HP Mini 210 VT - Intel Atom N470  @ 1.83GHz, Intel GMA3150, RAM=2 ГБ ;
Sams-n110: N270 - 1,6 ГГц, Intel GMA 950, RAM=2 ГБ.

Оффлайн totiks2012

  • Ветеран
  • *****
  • Сообщений: 922
  • Репутация: +24/-0
  • Автор темы
Здесь для свободного скачивания старенькие iso. Арч - pra*.iso и prar*.iso. Смотреть /etc/pacman.conf, /etc/pacman.d.
спасибо

Оффлайн totiks2012

  • Ветеран
  • *****
  • Сообщений: 922
  • Репутация: +24/-0
  • Автор темы
А с другой стороны, в теории, :) можно обойтись и без заморозки, если не делать pacman -Sy, или нет?
Да вот пришёл и к этому выводу, после  установки системы сделать по бырому все модули которые нужны, по правде говоря домашнему пользователю не так много и нужно , у меня собралось их штук 20 и то некоторые были собраны из любопытства, то есть если критично подойти к выбору то будет меньше, повторюсь после  установки системы сделать по бырому все модули которые нужны, а потом работает не трожь, если нужно собрать из старой базы не делая pacman -Sy , по этому поводу я уже успел отлюлится :)  на телеграм канале ctlos я пришёл туда с вопросами:) ..., в общем там достаточно грамотно ответили,спасибо им за это, но при этом даванули чтоб я принял свет истиного ролинга, ну я было  проникся ибо ...нужно, ...но я же всё равно сделаю по своему...ибо  такой.

Оффлайн totiks2012

  • Ветеран
  • *****
  • Сообщений: 922
  • Репутация: +24/-0
  • Автор темы
- имхо, наверно имеет значение - чтоб "обновлялки-для-реп" не были вшиты в утилиты (пр. для ddog: synaptic, apt2sfs)
о! вот это ценное замечание, вероятнеё всего аплет менаджера обновлений запихнутый на автозагрузку, дергает при загрузке каждый раз pacman -Sy вот это поведение мне нужно будет прибить, да и скрипты все проверить на это ...    knn спасибо!

Оффлайн totiks2012

  • Ветеран
  • *****
  • Сообщений: 922
  • Репутация: +24/-0
  • Автор темы
Итак  Archman Linux не виноват, при первой загрузке я соглашался на обновления, с ними обновлялось ядро, после его обновления сыпались ошибки по разным фирмваре, после перезагрузки ломался звук, я заморозил ядро ,систему обновил один раз, сделав перед этим sudo pacman -Sy , и потом вынес аплет уведомлений об обновлении  из автозагрузки, так же убрал из всех своих скриптов sudo pacman -Sy, после этого всё работает как часики, остался на ctlos ибо он локализован, обновлять не буду ибо такой кейс у этой задачи, (и пусть я буду предан анафеме участниками телеграмм канала  ctlos за то что я попрал свет их ролинга, но художника сегодня так торкнуло , я так вижу, и вообще комп мой, с ним что хочу то и делаю, вуффф ) . Паралельно этому написал скрипт для масового создания модулей по списку, крутая штука получилась буду адаптировать для Debian, архив во вложении.
----------------------------------
как использовать скрипт
----------------------------------
распаковать в $HOME/.local/bin каталог massinstall ,
из этого каталога скопировать каталог massinstall с списком модулей pakhages.txt
в pakhages.txt имена модулей можно коментировать и раскоментировать 
с помощью # как обычно в bash если поставить перед именем  #  то это запретит создание модуля
 в $HOME/.config/ то есть в $HOME/.config/massinstall/pakhages.txt ,
запустить скрипт massinstall.sh
он создаст модули в $HOME/portapps
по окончанию работы скрипта переместит их в $HOME/modules
если вы желаете удалить все каталоги с ресурсами модулей автоматически
из $HOME/portapps/ то следует раскоментировать последнюю строку из скрипта massinstall.sh
вот эту  #sudo rm -r $HOME/portapps/*

Важное замечание проследите чтоб pakhages.txt при сохранении не содержал пустых строк,
то есть следует сохранять файл с именами модулей на конец строки
« Последнее редактирование: 08 Июнь 2024, 21:17:16 от totiks2012 »

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 34079
  • Репутация: +233/-0
    • PuppyRus-A
можно обойтись и без заморозки, если не делать pacman -Sy, или нет?
Нет. Если в конфиге ПМ свежий срез, а в локальных базах старый список пакетов - pacman будет искать старые версии пакетов в свежем срезе и не найдет
Или заморозка или роллинг. 3го не дано
Код
# cat /etc/pacman.d/mirrorlist 
Server=http://archive.archlinux.org/repos/2021/09/28/$repo/os/$arch 

Оффлайн totiks2012

  • Ветеран
  • *****
  • Сообщений: 922
  • Репутация: +24/-0
  • Автор темы
Или заморозка или роллинг
я может плохо искал, ... подскажите пожалуйска как замораживать репозитории
или дайте ссылки если есть  пожалуйста  на man по этой теме, нигде не нашёл где толком описывается это.
upd: смотрел тут https://wiki.puppyrus.org/setups/pacman и тут https://wiki.archlinux.org/title/Arch_Linux_Archive
пока не достиг просветления, но я уже в пути, если найду обязательно напишу в этой теме.
« Последнее редактирование: 11 Июнь 2024, 20:25:51 от totiks2012 »

Оффлайн totiks2012

  • Ветеран
  • *****
  • Сообщений: 922
  • Репутация: +24/-0
  • Автор темы
Для Sfs  , прошу прощения за то что вхожу в спор , но я с 9.06, не делал sudo pacman -Sy . Спросил у ИИ им конечно не сильно доверяю, но он мне посоветовал вот такую команду чтоб посмотреть дату последнего обновления базы данных:
ls -l --time-style=long-iso /var/lib/pacman/sync/           
ответом на текущие 11.06.24
-rw-r--r-- 1 root root  797555 2024-06-09 16:00 chaotic-aur.db
-rw-r--r-- 1 root root  123682 2024-06-09 14:52 core.db
-rw-r--r-- 1 root root   15256 2024-06-09 16:00 ctlos-aur.db
-rw-r--r-- 1 root root    6279 2024-06-09 16:00 ctlos_repo.db
-rw-r--r-- 1 root root 8250089 2024-06-09 14:18 extra.db
-rw-r--r-- 1 root root  140729 2024-06-08 22:44 multilib.db

и по его утверждениям  пакеты будут загружатся на это число, обновлятся я тоже не буду. То есть всё таки может прокатить если не делать pacman -Sy
« Последнее редактирование: 11 Июнь 2024, 21:25:06 от totiks2012 »

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5393
  • Репутация: +143/-1
Или заморозка или роллинг. 3го не дано
Хз, я еще не разу не юзал фулл с роллинг, поэтому не совсем в теме. Но известны примеры, когда юзеры "Больших Дистров" (с арчем) часто не обновляются неделями, месяцами, по полгода и даже годами, и как-то живут при этом.
Потом конечно могут возникнуть некоторые проблемы при `pacman -Syu` (особенно на больших сроках), но опытные линуксоиды обычно их легко решают.

Цитата
Я уже лет пять обновляюсь раз в 3-6-9 месяцев.
ЛОР
« Последнее редактирование: 11 Июнь 2024, 21:33:14 от krasnyh »

Оффлайн totiks2012

  • Ветеран
  • *****
  • Сообщений: 922
  • Репутация: +24/-0
  • Автор темы
Как замораживать уже разобрался, собствено sfs и подсказал
нужно в /etc/pacman.d/mirrorlist править репу на манер
Server = http://archive.archlinux.org/repos/2024/06/09/$repo/os/$arch
#Server = https://archive.archlinux.org/repos/2024/06/09/$repo/os/$arch
но я либо должен отказатся от реп chaotic-aur и cltos а там есть пакеты. Собствено мне не критично, я в начале  с помощью автомата скрипта наделал модулей, ими и пользуюсь и как бы пакетов больше не нужно. ...просто руки загребуки и жадный до знаний глаз не дают покоя. Интересно же...
« Последнее редактирование: 11 Июнь 2024, 22:53:12 от totiks2012 »