LINUX.ORG.RU
ФорумTalks

Gentoo: portconf live

 ,


3

0

Вроде допилил.
живёт в stuff и тут --> https://github.com/megabaks/portconf
собственно что делает:

  • сортирует в алфавитном порядке атомы - для удобства ручной правки
  • юзы:
    • оставляет только последнее состояние юза(on/off)
    • удаляет юз, если он имеет то же состояние что и в профиле/make.conf
    • удаляет некорректные юзы, причём проверяет юзы для всех версий, а не только для распоследних версий ( привет portpeek :3 )
    • т.к. портаж криво работает с камментами в конце строки, то перед # добавляется пробел, ежели такого не имеется
    • удаляет юз из make.conf, если он задействован в профиле
  • удаляет неустановленные и не найденные атомы. ищется овер eix - т.е. в оверлеях тоже. переключалки из '<>=~' так же учитываются
  • удаляет некорректные атомы, типа '> ololo trololo'
  • может перегонять из файлов в диры и обратно. диры получаются вида package.*/${CATEGORY}, куда и попадают атомы этой категории
  • бекап и откат:
    • бекап создаётся только если /etc/portage обновился после создания последнего бекапа или если бекапов вообще нет.
    • по умолчанию сохраняется 10 тарболов - можно покрутить овер конфиг
    • бекапы создаются при использовании любых опций, кроме хелпа и отката

eix обязателен!
жду мата :3

★★★★

Последнее исправление: megabaks (всего исправлений: 1)

О! добро! но потестю попозжа...

Thero ★★★★★
()

Спс, все не пробовал, но за --sort и --use-sort спс, работают.

ymuv ★★★★
()

Креатив позитивный, автор молодец :3

Xenesz ★★★★
()
Checking use flags in make.conf
Использование: grep [ПАРАМЕТР]… ШАБЛОН [ФАЙЛ]…
Запустите «grep --help» для получения более подробного описания.
vasily_pupkin ★★★★★
()
Ответ на: комментарий от megabaks
Global or invalid use: cross-mips-router-linux-uclibc/gdb: gdb                                            [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/gdb: sys-devel                                      [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/insight: dev-util                                   [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/insight: insight                                    [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/binutils: multilib                                  [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/binutils: selinux                                   [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/gcc: boundschecking                                 [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/gcc: cxx                                            [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/gcc: d                                              [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/gcc: fortran                                        [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/gcc: gcj                                            [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/gcc: gtk                                            [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/gcc: libffi                                         [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/gcc: mudflap                                        [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/gcc: multilib                                       [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/gcc: nocxx                                          [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/gcc: objc                                           [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/gcc: objc++                                         [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/gcc: objc-gc                                        [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/gcc: openmp                                         [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/gcc: selinux                                        [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/linux-headers: multilib                             [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/linux-headers: selinux                              [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/uclibc: multilib                                    [ ok ]
Global or invalid use: cross-mips-router-linux-uclibc/uclibc: selinux                                     [ ok ]
...

multilib

vasily_pupkin ★★★★★
()

и перекидывание /etc/make.conf в православный /etc/portage/make.conf с удалением старого :)

P.S. протесчу вечером или завтра

qnikst ★★★★★
()

Это значит что теперь можно autounmask-write в make.conf записать? Очень хорошо. Такого функционала очень не хватало.

SmaL
()
Ответ на: комментарий от qnikst

зачем насильно перекидывать?
portconf ведёт себя так же как и портаж с этими файлами - /etc/portage/make.conf важнее
а дальше...каждый дрочит как хочет - хоть в припрыжку :3

megabaks ★★★★
() автор топика
Ответ на: комментарий от vasily_pupkin

попробуй синкнуть гит - пару затычек для тебя там запилил

megabaks ★★★★
() автор топика
Ответ на: комментарий от megabaks

Может и не очень, но это тогда надо писать в рассылку crossdev. В общем, маловероятно что это когда-нибудь изменится

vasily_pupkin ★★★★★
()
Ответ на: комментарий от megabaks

А чо у меня с make.conf?

# ompload /etc/portage/make.conf 
Progress for '/etc/portage/make.conf'
######################################################################## 100,0%
Omploaded '/etc/portage/make.conf' to http://ompldr.org/vZnAxZg
Success.
vasily_pupkin ★★★★★
()
Ответ на: комментарий от megabaks
> eix cross-arm-unknown-linux-gnueabi/gcc  -uc
[U] cross-arm-unknown-linux-gnueabi/gcc (4.1.2[?]@08.07.2012 4.5.3-r2[?]@09.09.2012 -> 2.95.3-r9(-)[2] 4.5.3-r2[1]): The GNU Compiler Collection
[1] /var/lib/crossdev

итд

vasily_pupkin ★★★★★
()
Ответ на: комментарий от megabaks
# eix cross-arm-unknown-linux-gnueabi/gcc  -u
[U] cross-arm-unknown-linux-gnueabi/gcc [1]
     Available versions:  
	(-)	2.95.3-r9
	(0)	(~)2.95.3-r10 3.1.1-r2 (**)3.2.2 3.2.3-r4 (~)3.3.6-r1 3.4.6-r2 (~*)4.0.4 4.1.2 (~)4.2.4-r1 (~)4.3.3-r2 4.3.4 (~)4.3.5 4.3.6-r1 (~)4.4.2 (~)4.4.3-r3 4.4.4-r2 4.4.5 4.4.6-r1 4.4.7 (~)4.5.1-r1 (~)4.5.2 4.5.3-r2 [m]4.5.4 [m](~)4.6.0 [m](~)4.6.1-r1 [m](~)4.6.2 [m](~)4.6.3 [m](~)4.7.0 [m](~)4.7.1 [m](~)4.7.2
     Installed versions:  4.1.2^s[?](18:04:33 08.07.2012)(nls nocxx nptl -altivec -bootstrap -build -cxx -d -doc -fortran -gcj -gtk -hardened -libssp -mudflap -multilib -multislot -objc -objc++ -objc-gc -test -vanilla) 4.5.3-r2^s[?](12:55:28 09.09.2012)(cxx hardened lto nls nptl openmp -altivec -bootstrap -build -doc -fixed-point -fortran -gcj -graphite -gtk -libssp -mudflap -multilib -multislot -nocxx -nopie -nossp -objc -objc++ -objc-gc -test -vanilla)
     Description:         The GNU Compiler Collection

[1] /var/lib/crossdev
vasily_pupkin ★★★★★
()
Ответ на: комментарий от megabaks

Имелось ввиду, что отступы блоков кода следует делать либо только табами, либо пробелами.
На данный момент же наблюдается мешанина.

Также дурным тоном считается оставлять пробельные символы в конце строк кода.

dismal_faun ★★
()
Ответ на: комментарий от dismal_faun

в конце строки стараюсь не оставлять - если только по запарке
QA ебыдлов, знаете ли, да
а вообще таб так настроен - с новой строки рисует 2 пробела, толко если дальше лезть будут табы
таки дела

megabaks ★★★★
() автор топика
Ответ на: комментарий от vasily_pupkin
avalon basic # euse -h
/etc/make.conf: line 2: /etc/make/global/trunk: Отказано в доступе
/etc/make.conf: line 3: /etc/make/global/c: Отказано в доступе
/etc/make.conf: line 4: /etc/make/global/cxx: Отказано в доступе
/etc/make.conf: line 5: /etc/make/global/threads: Отказано в доступе
/etc/make.conf: line 6: /etc/make/global/video: Отказано в доступе
/etc/make.conf: line 7: /etc/make/global/input: Отказано в доступе
/etc/make.conf: line 8: /etc/make/global/cameras: Отказано в доступе
/etc/make.conf: line 9: /etc/make/global/langs: Отказано в доступе
/etc/make.conf: line 10: /etc/make/global/licenses: Отказано в доступе
/etc/make.conf: line 11: /etc/make/global/distdir: Отказано в доступе
/etc/make.conf: line 12: /etc/make/global/portdir: Отказано в доступе
/etc/make.conf: line 16: /etc/make/global/porthost: Отказано в доступе
/etc/make.conf: line 17: /etc/make/global/disthost: Отказано в доступе
/etc/make.conf: line 21: /etc/make/global/options: Отказано в доступе
/etc/make.conf: line 23: /etc/make/global/features: Отказано в доступе
/etc/make.conf: line 25: /etc/make/global/arch: Отказано в доступе
/etc/make.conf: line 27: /etc/make/global/use: Отказано в доступе
/etc/make.conf: line 2: /etc/make/global/trunk: Отказано в доступе
/etc/make.conf: line 3: /etc/make/global/c: Отказано в доступе
/etc/make.conf: line 4: /etc/make/global/cxx: Отказано в доступе
/etc/make.conf: line 5: /etc/make/global/threads: Отказано в доступе
/etc/make.conf: line 6: /etc/make/global/video: Отказано в доступе
/etc/make.conf: line 7: /etc/make/global/input: Отказано в доступе
/etc/make.conf: line 8: /etc/make/global/cameras: Отказано в доступе
/etc/make.conf: line 9: /etc/make/global/langs: Отказано в доступе
/etc/make.conf: line 10: /etc/make/global/licenses: Отказано в доступе
/etc/make.conf: line 11: /etc/make/global/distdir: Отказано в доступе
/etc/make.conf: line 12: /etc/make/global/portdir: Отказано в доступе
/etc/make.conf: line 16: /etc/make/global/porthost: Отказано в доступе
/etc/make.conf: line 17: /etc/make/global/disthost: Отказано в доступе
/etc/make.conf: line 21: /etc/make/global/options: Отказано в доступе
/etc/make.conf: line 23: /etc/make/global/features: Отказано в доступе
/etc/make.conf: line 25: /etc/make/global/arch: Отказано в доступе
/etc/make.conf: line 27: /etc/make/global/use: Отказано в доступе
ERROR: /usr/portage/profiles does not exist or is not a directory

Бухоха, там что, пути захардкожены? Хорошие такие кодеры писали утилиту, с очень ровными руками :D

Kindly_Cat
()

Ждем аналога для убунты!

Siado ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.