# przejscie na x86 z ~

## Vegan

Hello , korzystanie z całego systemu opartego na pakietach z gałęzi ~x86 jest zabawne ale trochę mnie już zmęczyło ciągle tropienie memory leakow , chciałbym trochę popracować na przynajmniej w większości stabilnym systemie  :Smile:  ~ jet rozsądne tylko w przypadku paru pakietów , teraz moje pytanie - czy jest sposób na re kompilacje -e system && -e world z gałęzi ~x86 na x86 (oczywiście bo zmianie accept keywords w /etc/make.conf) chodzi mi o to iż niektóre pakiety jak glibc nie wspierają downgrade'u co w takiej sytuacji zrobić jeśli nie chce się instalować gentoo ponownie ?

----------

## yoshi314

przestawic na x86 i gdy portage proponuje downgrade nie instalowac, tylko czekac az pakiety przejda do x86. nie jest to zbyt dobre rozwiazanie, ale lepsze niz nic :]

albo dac ~x86 tylko paru newralgicznym pakietom (m.in. glibc)

----------

## kacper

Ja z pół roku temu próbowałem takiej operacyji, skończyło się na chroot i instalowaniu pakietów ~x86 bo było full błędów, nie polecam takiego przejścia, chyba, że coś się od tamtego czasu zmieniło.

Swoja drogą, cały czas używam ~x86 i od paru miesięcy ani jednego błędu nie miałem.

----------

## Vegan

no bo w jednym tygodniu nie ma błędów , ale zaktualizujesz jakiś pakiet np najnowsze xorg-server1.3 ( nie startuje kompletnie z ati drivers musiałem downgredowac , ) lub najnowszy gnome-panel problem z wyciekiem pamieci itp , itd chodzi glownie o takie male bledy ktore potrafia byc denerwujace . Wiec przemyslalem iz najnowsze wersje pakietow niewiele mi daja i moge spokojnie poczekac gdy dane nowe funkcji zostana zaimplementowane w stabilnych wersjach a jesli cos jest super w nwoej wersji programu zawsze moge go odmaskowac w druga strone nie jest juz tak latwo , no ale coz chyba bede musial przysiasc w wolny weekend backup wszystkich plików konfiguracyjnych i siup reinstall .

----------

## Poe

proszę nie wypowiadać się tutaj na temat czy ~ARCH jest lepsze od ARCH i na odwrot, bo nie o to autor pyta.

----------

## lokocool

ja probowalem takiej akcji kilka dni temy, nawet gdzies pisalem o tym... skonczylo sie na tym ze gentoo postawilem od nowa wszytko na x86 przy probie downgradu same bledy. Wydaje mi sie ze jedyna opcja zeby wrocic na x86 jest poczekanie az pakiety x86 beda nowsze niz ~x86 i tyle.. 

Pozdr.

----------

## Piecia

Mi się taka operacja udała na laptopie i pececie. Aktualnie newralgiczne pakiety jak glibc jest zabezpieczony przed downgrade'em. Aczkolwiek było trochę błędów ale system działał. Nic nie szkodzi spróbować w przypadku instalacji od nowa.

----------

## arturx

U mnie z downgradem do x86 nie było problema. 

Najpierw wpis w /etc/portage/package.keywords : =sys-libs/glibc-2.5-r1 ~x86, 

potem instalacja gcc i przesiadka sie na nowe gcc ( gcc-config ). Następnie: emerge -e system i potem reboot i instalacja + kompilacja kernela i na koniec emerge -e world. W między czasie : etc-update i env-update

----------

## Gabrys

Ja bym pewnie zrobił tak:

1. Zainstalował sobie programik eix.

2. Wygenerował listę paczek, które są zainstalowane:

eix -I --nocolor --format '=<category>/<name>-<bestshort>'  | grep ^=

3. Zapisał sobie to do pliku /etc/portage/package.keywords/testing

4. Zmienił w /etc/make.conf ACCEPT_KEYWORDS.

5. Wykonał emerge -uDN world -pv, żeby zobaczyć jakie paczki eix pominął (na pewno te, które mają kilka slotów -- jak qt). Dopisałbym je do w/w pliku.

6. Wykonywałbym już potem co jakiś czas normalne emerge -uDN world.

7. Po jakimś miesiącu dwóch, spróbowałbym przenieść gdzieś plik z listą pakietów, żeby zobaczyć ile jeszcze pakietów idzie z gałęzi testing.

8. Jeśli wciąż dużo, to bym zostawił, jak już tylko kilkanaście, to bym go wywalił i dał emerge -uDN world.

Chyba tak by było najłatwiej i najbezpieczniej.

Pozdrawiam.

----------

## Arfrever

 *Gabrys wrote:*   

> Ja bym pewnie zrobił tak:
> 
> 1. Zainstalował sobie programik eix.
> 
> 2. Wygenerował listę paczek, które są zainstalowane:
> ...

 

Nawet nie sprawdziłeś przydatności całego wyniku. (Przykład: "=sys-apps/portage-(~)2.1.2.5").

Ja proponuję:

```
cd /var/db/pkg

for x in */* ; do echo =$x ; done
```

Ten sposób działa dla pakietów wieloslotowych.

Perduodu linkėjimus

Arfrever

----------

## arturx

a jak wygenerować tylko pakiety z "~x86" , gdy mam "x86" ?

----------

## Vegan

To jest DUZO latwiejsze niz odwrotnie , zastanow sie czy chcesz meic caly system unstable , czasem trzeba po upgradzi'e downgradowac pakiety bo nie dzialaja ( tak jak ostatnio z gnome-volume manager wrr) ale  ok : 

# nano -w /etc/make.conf

```
ACCEPT_KEYWORDS="~x86"
```

#emerge --sync

#emerge -DNuav world

Oczywiscie zainstaluje CI sie niestabilna wersja gcc i bedzie konieczne poczynienie odpowiednich krokow konfiguracyjnych i przebudowa wszystkich pakietow 

ale to odsylam do 

http://www.gentoo.org/doc/en/gcc-upgrading.xml

----------

## arturx

źle mnie zrozumiałeś , mam na myśli wygenerowanie listy zainstalowanych pakietów ~x86 np 

```

(...)

=x11-proto/xcmiscproto-1.1.2

=x11-proto/xextproto-7.0.2

=x11-proto/xf86bigfontproto-1.1.2

(...)

```

w ten sposób bym mógł zawartość wkleić do pliku /etc/portage/package.keywords i czekać cierpliwie aż ukażą sie nowe wersje na x86. Chodzi mi o to by w/w plik na bieżąco odchudzać by nie było w nim pakietów które zostały zaktualizowane nowszą wersją

----------

## dziadu

Rozumiem, że teraz jesteś na ~x86. Ustaw w /etc/make.conf

ACCEPT_KEYWORDS="x86"

a potem wydaj emerge world -uDpv i zobacz, które pakiety chce downgradować - i masz problem rozwiązany.

----------

## arturx

wrrrrrrrrr mam x86 a przedtem ~x86

 *arturx wrote:*   

> a jak wygenerować tylko pakiety z "~x86" , gdy mam "x86" ?

 

jak wklepie : emerge world -uDpv to mam :

```
localhost ~ # emerge world -uDpv 

(...)

[ebuild     UD] kde-base/kdebase-meta-3.5.5 [3.5.6] 0 kB

(...)
```

a mi chodzi o to by było np :

```

=kde-base/kdebase-meta-3.5.6

```

w ten sposób bym mógł kopiować i wkleić do /etc/portage/package.keywords bo niechce downgradować tylko poczekac na nowe wersje pakietów z x86

----------

## dziadu

localhost ~ # emerge world -uDpv 

(...)

[ebuild     UD] kde-base/kdebase-meta-3.5.5 [3.5.6] 0 kB

(...)

a mi chodzi o to by było np :

=kde-base/kdebase-meta-3.5.6

Może mam za Ciebie przepisywać to ręcznie albo napisać skrypt który zrobi to automatycznie? No sorry... Powiedziałem jak... Ty zajmij się resztą.

----------

## arturx

 *dziadu wrote:*   

> 
> 
> Może mam (...) napisać skrypt który zrobi to automatycznie? No sorry... 

 

to po co sie udzielasz skoro nie masz zamiaru pomóc ?? - szkoda prądu na twoją pseudo inteligencje

 *dziadu wrote:*   

> 
> 
> Powiedziałem jak... Ty zajmij się resztą.

 

nic nie powiedziałeś bo nie rozumiesz o czym pisze, wynurzyłeś sie tylko ze znajomością podstawowych poleceń z emerge. Zanim coś tu naskrobiesz to pomyśl 3 razy albo znajdź sobie inne zajęcie

----------

## przemos

Prawie gotowa odpowiedz masz tutaj:

 *Gabrys wrote:*   

> 
> 
> eix -I --nocolor --format '=<category>/<name>-<bestshort>'  | grep ^=
> 
> 

 

Wprowadzasz tylko mala poprawke:

```

eix -I --nocolor --format '=<category>/<name>-<bestshort>'  | grep ^= | grep "~"

```

I juz masz prawie dokladnie to co chciales, np.

```

...

=x11-libs/qt-(~)3.3.8-r1[4]

=x11-misc/beryl-manager-(~)0.2.1

=x11-misc/beryl-settings-(~)0.2.1

=x11-misc/beryl-settings-bindings-(~)0.2.1

...

```

Aby wyrzucic zbedne znaki, czyli w tym przykladzie "[4]", "(~)" proponuje uzyc gawk (man gawk). Chociaz pewnie ile osob tyle rozwiazan.

EDIT: Mozna jeszcze expr wykorzystac lub tez najzwyczajniej w swiecie otworzyc jakis edytor plikow z opcja "find and replace"

----------

## arturx

dzięki , działa  :Smile:  w końcu ktoś rozsądny sie odezwał. Pozdrawiam

----------

