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

Автор Тема: UIRD и zram  (Прочитано 7434 раз)

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

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: UIRD. zram
« Ответ #15 : 10 Март 2020, 16:50:35 »
Мы же делаем сборку для опытных пользователей
Тогда достаточно вбросить PKGBUILD на арч форум или сразу в AUR (я не умею)  :)

Оффлайн kostyalamer

  • Почетный участник
  • Старожил
  • *
  • Сообщений: 235
  • Репутация: +5/-0
Re: UIRD. zram
« Ответ #16 : 10 Март 2020, 18:51:47 »
Мы же делаем сборку для опытных пользователей
Тогда достаточно вбросить PKGBUILD на арч форум или сразу в AUR (я не умею)  :)
Александр , мы с тобой эту тему уже обсуждали : http://forum.puppyrus.org/index.php?topic=22233.0
В чем затык ? Может подскажу что-нибудь если надо.

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
Re: UIRD. zram
« Ответ #17 : 10 Март 2020, 20:14:31 »
В чем затык ? Может подскажу что-нибудь если надо.
Здесь взять два файла 50-dracut.install и PKGBUILD и собрать командой makepkg. На выходе должно получиться три файла uird-*, uird-dracut, uird-busybox.

Sfs написал PKGBUILD, проверил на aarch64, все ok. Я же на IceArch как ни собираю постоянно:
    ==> ОШИБКА: Произошел сбой в package_uird-busybox().
« Последнее редактирование: 10 Март 2020, 20:17:02 от krasnyh »

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: UIRD. zram
« Ответ #18 : 10 Март 2020, 20:17:50 »
ОШИБКА: Произошел сбой в package_uird-busybox().
После появления ошибки попробуйте собирать бизибокс скриптом  make_dracut.sh, поссотрим на что ругается. Скорее всего упустили что-то в зависимостях.

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: UIRD. zram
« Ответ #19 : 10 Март 2020, 20:21:55 »
Помнится с cpio для дракута в айсарче проблема была. Есть он в списке?

Оффлайн kostyalamer

  • Почетный участник
  • Старожил
  • *
  • Сообщений: 235
  • Репутация: +5/-0
Re: UIRD. zram
« Ответ #20 : 10 Март 2020, 21:56:42 »
Ошибку сборки подтверждаю , пакет cpio установлен :
cc -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -std=gnu99 -D_FILE_OFFSET_BITS=64 -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2  -D_FORTIFY_SOURCE=2  -c -o install/dracut-install.o install/dracut-install.c
cc -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -std=gnu99 -D_FILE_OFFSET_BITS=64 -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2  -D_FORTIFY_SOURCE=2  -c -o install/hashmap.o install/hashmap.c
cc -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -std=gnu99 -D_FILE_OFFSET_BITS=64 -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2  -D_FORTIFY_SOURCE=2  -c -o install/log.o install/log.c
cc -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -std=gnu99 -D_FILE_OFFSET_BITS=64 -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2  -D_FORTIFY_SOURCE=2  -c -o install/strv.o install/strv.c
cc -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -std=gnu99 -D_FILE_OFFSET_BITS=64 -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2  -D_FORTIFY_SOURCE=2  -c -o install/util.o install/util.c
cc -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -o install/dracut-install install/dracut-install.o install/hashmap.o install/log.o install/strv.o install/util.o  -lkmod
ln -fs install/dracut-install dracut-install
cc -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -std=gnu99 -D_FILE_OFFSET_BITS=64 -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2  -D_FORTIFY_SOURCE=2  -c -o skipcpio/skipcpio.o skipcpio/skipcpio.c
cc -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now  skipcpio/skipcpio.o   -o skipcpio/skipcpio

==> Вход в окружение fakeroot...
==> Запускается package_uird-busybox()...
install: не удалось выполнить stat для '/home/k/sfs_drac/src/uird/busybox/busybox': Нет такого файла или каталога
==> ОШИБКА: Произошел сбой в package_uird-busybox().
    Прерывание...


И правда нет такого файла :
k@icearch:~/sfs_drac/src/uird/busybox/$ ls
applets/                coreutils/    INSTALL          Makefile.flags           procps/                  testsuite/
applets_sh/             debianutils/  klibc-utils/     Makefile.help            qemu_multiarch_testing/  TODO
arch/                   docs/         libbb/           make_single_applets.sh*  README                   TODO_unicode
archival/               e2fsprogs/    libpwdgrp/       miscutils/               runit/                   util-linux/
AUTHORS                 editors/      LICENSE          modutils/                scripts/
busybox_unstripped.out  examples/     loginutils/      networking/              selinux/
Config.in               findutils/    mailutils/       NOFORK_NOEXEC.lst        shell/
configs/                include/      Makefile         NOFORK_NOEXEC.sh*        size_single_applets.sh*
console-tools/          init/         Makefile.custom  printutils/              sysklogd/


Оффлайн kostyalamer

  • Почетный участник
  • Старожил
  • *
  • Сообщений: 235
  • Репутация: +5/-0
Re: UIRD. zram
« Ответ #21 : 10 Март 2020, 22:05:55 »
Возможно поможет вот это - busybox_unstripped_out :
Output of:
gcc -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -Wall -Wshadow -Wwrite-strings
 -Wundef -Wstrict-prototypes -Wunused -Wunused-parameter -Wunused-function
 -Wunused-value -Wmissing-prototypes -Wmissing-declarations -Wno-format-security
 -Wdeclaration-after-statement -Wold-style-definition -fno-builtin-strlen -finline-limit=0
 -fomit-frame-pointer -ffunction-sections -fdata-sections -fno-guess-branch-probability
 -funsigned-char -static-libgcc -falign-functions=1 -falign-jumps=1 -falign-labels=1
 -falign-loops=1 -fno-unwind-tables -fno-asynchronous-unwind-tables
 -fno-builtin-printf -Os -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -o
 busybox_unstripped -Wl,--sort-common -Wl,--sort-section,alignment -Wl,--gc-sections -Wl,--start-group
applets/built-in.o archival/lib.a archival/libarchive/lib.a
 console-tools/lib.a coreutils/lib.a coreutils/libcoreutils/lib.a debianutils/lib.a
 klibc-utils/lib.a e2fsprogs/lib.a editors/lib.a findutils/lib.a init/lib.a
libbb/lib.a libpwdgrp/lib.a loginutils/lib.a mailutils/lib.a miscutils/lib.a
 modutils/lib.a networking/lib.a networking/libiproute/lib.a networking/udhcp/lib.a
printutils/lib.a procps/lib.a runit/lib.a selinux/lib.a shell/lib.a sysklogd/lib.a
util-linux/lib.a util-linux/volume_id/lib.a archival/built-in.o archival/libarchive/built-in.o
 console-tools/built-in.o coreutils/built-in.o coreutils/libcoreutils/built-in.o
 debianutils/built-in.o klibc-utils/built-in.o e2fsprogs/built-in.o editors/built-in.o
 findutils/built-in.o init/built-in.o libbb/built-in.o libpwdgrp/built-in.o
 loginutils/built-in.o mailutils/built-in.o miscutils/built-in.o modutils/built-in.o
networking/built-in.o networking/libiproute/built-in.o networking/udhcp/built-in.o
 printutils/built-in.o procps/built-in.o runit/built-in.o selinux/built-in.o shell/built-in.o
 sysklogd/built-in.o util-linux/built-in.o
util-linux/volume_id/built-in.o -Wl,--end-group -Wl,--start-group -lcrypt -lm -lresolv -Wl,--end-group
==========
/usr/bin/ld: coreutils/lib.a(mktemp.o): в функции «mktemp_main»:
mktemp.c:(.text.mktemp_main+0x96): предупреждение: the use of `mktemp' is dangerous,
 better use `mkstemp' or `mkdtemp'
/usr/bin/ld: util-linux/lib.a(rdate.o): в функции «rdate_main»:
rdate.c:(.text.rdate_main+0x104): неопределённая ссылка на «stime»
/usr/bin/ld: coreutils/lib.a(date.o): в функции «date_main»:
date.c:(.text.date_main+0x25e): неопределённая ссылка на «stime»
collect2: ошибка: выполнение ld завершилось с кодом возврата 1


Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
Re: UIRD. zram
« Ответ #22 : 10 Март 2020, 22:10:31 »
Как я понял проблема с устаревшим busybox. В IceArch же все самое свежее, отсюда наверно и конфликты. Читать отсюда и ниже.

Его для сборки 'морозят', т.е. используют стабильную ветку git. Где-то прокатывает, а в IceArch все сыплется ошибками. При этом pacman -S busybox не вариант, пробовал.
« Последнее редактирование: 10 Март 2020, 22:16:17 от krasnyh »

Оффлайн kostyalamer

  • Почетный участник
  • Старожил
  • *
  • Сообщений: 235
  • Репутация: +5/-0
Re: UIRD. zram
« Ответ #23 : 10 Март 2020, 22:43:12 »
Только что для контроля собрал  https://aur.archlinux.org/packages/busybox-git/
все прекрасно собралось , но глядя в оба PKGBUILD-а настораживает вот что :
1) Сборочные зависимости
У Александра :
makedepends=('make' 'gcc' 'pkgconfig' 'git')
В busybox-git:
makedepends=('git' 'kernel-headers-musl' 'musl' 'ncurses')
2) Сборка
У Александра :
build() {
    msg "If you want to disable an applet, comment pkgbuild variables"
    cd "${srcdir}/${_gitname}"
    [ "${uirdbusybox}" ] && ./make_busybox.sh
    [ "${uirddracut}" ]  && ./make_dracut.sh
    echo
}
и
package_uird-busybox() {
pkgdesc="UIRD busybox"
    cd "${srcdir}/${_gitname}/busybox"
#    make DESTDIR="$pkgdir/usr/lib/uird/busybox" install
    mkdir -p "${pkgdir}"/usr/lib/uird/busybox
    install -m755 "${srcdir}"/${_gitname}/busybox/busybox "${pkgdir}"/usr/lib/uird/busybox
}

В busybox-git :
build() {
  cd "busybox"

  cp "$srcdir/config" ".config"
  yes "" | make oldconfig

  export KCONFIG_NOTIMESTAMP=1  # reproducible build
  make CC=musl-gcc
}
Видно что из git-а он собирается по-другому
« Последнее редактирование: 10 Март 2020, 23:34:22 от kostyalamer »

Оффлайн kostyalamer

  • Почетный участник
  • Старожил
  • *
  • Сообщений: 235
  • Репутация: +5/-0
Re: UIRD. zram
« Ответ #24 : 10 Март 2020, 23:32:46 »
Вот еще make_busybox.sh :
#!/bin/bash
git submodule init
git submodule update
cd busybox
make defconfig
make
# make install
cd ..
которым все и собирается , глядя на предыдущий пост явно не хватает каких-то ключей . Но это все из области предположений  ;)

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: UIRD. zram
« Ответ #25 : 11 Март 2020, 01:21:02 »
export KCONFIG_NOTIMESTAMP=1
Вполне может быть. В ошибке как раз что-то про time. Но со свежего среза гит бизибокса собирается и без этого и с make defconfig это важно.

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: UIRD. zram
« Ответ #26 : 11 Март 2020, 04:56:03 »
Что из доп. возможностей юирд мне , на ваш взгляд, было бы полезно , например мне, как домашнему юзеру?
- хомяк в папке или файле
- управление размером и типом рутфс (zram)
- toxzm (в магос давно прижился machcines, так toxzm это аналог, только более настраиваемый)
- загрузка фулл с фругальными фишками (toxzm, подключение модулей, теже своп и рутфс)
- монтирование системных каталогов в папки на диск, например для сохранения логов или /var/tmp
- ini конечно же, главное туда примеров накидать закомментареных

Я думаю действительно нужно меню.лст где будет пунктов 3-5 основных моментов и расширенное, которое будет использоваться скорее как примеры для своих пунктов. Имею ввиду в сборках для "людей", то что сейчас делаем можно не разбивать. Сейчас главное чтоб все работало и легко переносилось на любую другую вашу сборку

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: UIRD. zram
« Ответ #27 : 11 Март 2020, 05:14:00 »
Тогда достаточно вбросить PKGBUILD на арч форум или сразу в AUR (я не умею) 
Боюсь нас с вами не поймут. Для обычно установленного линукс дистра uird это навороченный аналог rosa freeze :) Сложно будет объяснить нафига вообще все это нужно, учитывая, что объяснить плюсы фругала уже проблема.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: UIRD. zram
« Ответ #28 : 11 Март 2020, 09:24:10 »
В чем затык ?
В том, что не считаю свои "шедевры" достойными AUR
Если neobht считает, что c PKGBUILD все ок - можете сами выложить.
makedepends=('git' 'kernel-headers-musl' 'musl'
Тогда он соберется под musl . Размер будет меньше, но в инитрд есть и еще бинарники
Придется добавлять или оба (musl и glibs) или компилить все бинарники по musl
Причем, наверное, dracut сам musl-glibc не разберет
Короче - не надо сейчас тут musl

- хомяк в папке или файле
По мне : фругал + rw сохраненка = недо-фул
Уж лучше тогда фул сразу и поставить

управление размером и типом рутфс (zram)
Из этой темы понял, что все не просто. Особеннно это
Zram проигрывает tmpfs в качестве рутфс только в том, что зрам не может использовать своп, а тмпфс может.
Попробую, но чудес не жду
RAM хватает. больба чисто теоретическая
ini конечно же, главное туда примеров накидать закомментареных
Пока не понял как и для чего применять
И главное - не понял чем это лучше просто скрипта, запускаемого уже в системе

Боюсь нас с вами не поймут.
Да. Почему-то большинство фругал игнорирует...
Хотя докер любят. Похоже все идет к тому, что весь софт в докере будет...

Оффлайн betcher

  • Модератор
  • Ветеран
  • ****
  • Сообщений: 3019
  • Репутация: +35/-0
    • MagOS linux
Re: UIRD. zram
« Ответ #29 : 11 Март 2020, 09:35:19 »
По мне : фругал + rw сохраненка = недо-фул
Уж лучше тогда фул сразу и поставить
У фулл не будет возможности отката, не будет возможности подключать модули. Как ни крути фругал+рв интереснее. Как по мне чистый режим + хомяк в папку самый оптимальный режим для установки фругала на диск. Т.е. не для флешки, а как основная система.
Попробую, но чудес не жду
Ну выходит, что в отсутствии свопа zram однозначно лучше чем tmpfs для рутфс. А со свопом уже нужно думать что будет удобнее в конкретном случае. Я бы зрам по умолчанию включал, а тмпф как возможность если нужно, чтоб рутфс мог использовать своп.