# [gelöst] Portage auf Git umstellen klappt nicht so ganz

## Schattenschlag

Hallöchen 

So diesmal ist es nicht wirklich ein Problem sondern eher ein wieso klappt es nicht !?

Wie schon in einer letzten hilfe post bezüglich usbsticks automatisch mounten lassen ... hab ich einen relativ alten Pc hier stehen .. und die updates von emerge dauern sehr sehr lange (hash werte vergleichen usw.).

Letztes Update fast 5 min. jetzt hab ich gelesen das man das eventuell umgehen kann wenn man das ganze statt über sync über das git laufen läst ...

Beim suchen auf Infos bin ich auf diese Webseite gestossen ...

https://www.serra.me/de/2020/01/gentoo-portage-auf-git-umstellen/

ich hab mich an die einstellungen gehalten wie sie dort beschrieben sind ... aber sobald ich ein update anstoßen wird nicht über git sondern nach wie vor über sync das ganze gestartet .. wieso ? wo hab ich da einen Denkfehler gemacht und was vergessen einzustellen ??

die Datei /etc/portage/repos.conf/gentoo.conf habe ich so geändert

```

[DEFAULT]

main-repo = gentoo

[gentoo]

location = /usr/portage

sync-type = git

sync-uri = https://anongit.gentoo.org/git/repo/sync/gentoo.git

auto-sync = yes

# sync-rsync-verify-jobs = 1

# sync-rsync-verify-metamanifest = yes

# sync-rsync-verify-max-age = 24

# sync-openpgp-key-path = /usr/share/openpgp-keys/gentoo-release.asc

# sync-openpgp-keyserver = hkps://keys.gentoo.org

# sync-openpgp-key-refresh-retry-count = 40

# sync-openpgp-key-refresh-retry-overall-timeout = 1200

# sync-openpgp-key-refresh-retry-delay-exp-base = 2

# sync-openpgp-key-refresh-retry-delay-max = 60

# sync-openpgp-key-refresh-retry-delay-mult = 4

# sync-webrsync-verify-signature = yes

```

Git ist installiert

```

dev-vcs/git

      Latest version installed: 2.26.2

```

das ganze unter /var/db/repos/gentoo gelöscht

und wenn ich jetzt update will kommt immer wieder das hier 

```
emerge --sync

>>> Syncing repository 'gentoo' into '/var/db/repos/gentoo'...

 * Using keys from /usr/share/openpgp-keys/gentoo-release.asc

 * Refreshing keys via WKD ...                                       
```

anstatt das ganze über git zu machen 

wäre echt super nett wenn mir da einer auf die sprünge helfen könnte ... danke schon im vorraus 

falls weiter infos von nöten sind bitte sagen 

mfg

schattiLast edited by Schattenschlag on Sat Apr 25, 2020 2:28 pm; edited 1 time in total

----------

## toralf

```
location = /usr/portage 
```

paßt schon mal nicht. Mit LibreSSL und einem lokalen Repo sieht es bei mir so aus:

```
$ tail -n 100 -v /etc/portage/repos.conf/*

==> /etc/portage/repos.conf/default.conf <==

[DEFAULT]

main-repo = gentoo

[gentoo]

priority = 10

[libressl]

priority = 20

[local]

priority = 99

==> /etc/portage/repos.conf/gentoo.conf <==

[gentoo]

location = /var/db/repos/gentoo

auto-sync = yes

sync-type = git

sync-uri = https://github.com/gentoo-mirror/gentoo.git

#sync-git-verify-commit-signature = true

==> /etc/portage/repos.conf/libressl.conf <==

[libressl]

location = /var/db/repos/libressl

auto-sync = yes

sync-type = git

sync-uri  = https://anongit.gentoo.org/git/repo/proj/libressl.git

==> /etc/portage/repos.conf/local.conf <==

[local]

location = /var/db/repos/local

auto-sync = no

```

----------

## Schattenschlag

Danke schon mal für deine Hilfe Stellung

Hmm ok libressl benötige ich nicht ok 

Auf der Wiki Seite über das Thema steht auch nicht von deinen Einträgen oder ist das ganze schon veraltet und es hat sich in der config. div. Dinge geändert ?!?

https://wiki.gentoo.org/wiki/Project:Portage/Sync

Gibt es da wo eine aktuelles Wiki im Netz wo ich mich da rein lesen könnte ? 

nach den kleinen änderungen was bei dir anders ist hat sich nix geändert ... sync wird gemacht und git einfach ignoriert hmm

```
>>> Syncing repository 'gentoo' into '/var/db/repos/gentoo'...

 * Using keys from /usr/share/openpgp-keys/gentoo-release.asc

 * Refreshing keys via WKD ...                                                                                                                                                         [ ok ]

>>> Starting rsync with rsync://[2a01:90:200:10::1a]/gentoo-portage...

Welcome to starling.gentoo.org / rsync.gentoo.org

```

----------

## toralf

nenne doch Deine config mal in "default.conf" um  :Wink: 

Und die LibreSSL Einträge einfach entfernen.

----------

## Schattenschlag

Also da kommt kein unterschied ... Git wird nicht angerührt oder in irgendeiner Form eingebunden oder verwenden ... komisch

Ich versteh es einfach nicht wieso git nicht verwendet wird .. muss ich wo anders noch was einstellen ... ? es wird stur nur sync genommen ... aber bei 5 min warten bis das ganze über sync läuft (oder länger) ist das alt etwas nervig .. da man doch merkt das er da zu kämpfen hat wenn nebenbei noch office offen ist usw... ...

Mir kommt es so vor wie wenn ich irgendwo noch was einstellen müsste .... da ja git überhaupt nicht in angesprochen wird .. keine error oder sonstige fehlermeldung ... 

```
emerge --sync

>>> Syncing repository 'gentoo' into '/var/db/repos/gentoo'...

 * Using keys from /usr/share/openpgp-keys/gentoo-release.asc

 * Refreshing keys via WKD ...                                                                                                                                                         [ ok ]

>>> Starting rsync with rsync://[2a00:1828:a00d:ffff::6]/gentoo-portage...

rsync: safe_read failed to read 1 bytes [Receiver]: Connection reset by peer (104)

rsync error: error in rsync protocol data stream (code 12) at io.c(276) [Receiver=3.1.3]

>>> Retrying...

>>> Starting retry 1 of 5 with rsync://[2a01:90:200:10::1a]/gentoo-portage

Welcome to starling.gentoo.org / rsync.gentoo.org

Server Address : 81.91.253.252, 2a01:90:200:10::1a

Contact Name   : mirror-admin@gentoo.org

Hardware       : 2 x Intel(R) Xeon(R) CPU E5-2470 0 @ 2.30GHz, 3946MB RAM

Sponsor        : Qube Managed Services Limited, Zurich, Switzerland, EU

Please note: common gentoo-netiquette says you should not sync more

than once a day.  Users who abuse the rsync.gentoo.org rotation

may be added to a temporary ban list.

MOTD autogenerated by update-rsync-motd on Thu Apr  4 19:07:17 UTC 2019

```

```
 # ls -la /etc/portage/repos.conf/

insgesamt 5

drwxr-xr-x 2 root root 1024 24. Apr 18:15 .

drwxr-xr-x 5 root root 1024 30. Mär 12:36 ..

-rw-r--r-- 1 root root   54 24. Apr 18:16 default.conf

-rw-r--r-- 1 root root  170 24. Apr 18:15 gentoo.conf

-rw-r--r-- 1 root root  641 24. Apr 11:15 gentoo.conf.bak

```

```
# cat /etc/portage/repos.conf/default.conf 

[DEFAULT]

main-repo = gentoo

[gentoo]

priority = 10

```

```

 cat /etc/portage/repos.conf/gentoo.conf

[gentoo]

location = /var/db/repos/gentoo

auto-sync = yes

sync-type = git

sync-uri = https://github.com/gentoo-mirror/gentoo.git

#sync-git-verify-commit-signature = true
```

```

  dev-vcs/git

      Latest version installed: 2.26.2

      Homepage:      https://www.git-scm.com/

      Description:   stupid content tracker: distributed VCS designed for speed and efficiency

      License:       GPL-2

```

```
*  net-misc/rsync

      Latest version installed: 3.1.3

      Homepage:      https://rsync.samba.org/

      Description:   File transfer program to keep remote files into sync

      License:       GPL-3
```

----------

## toralf

Nun ja, die lcoation "/var/db/repos/gentoo" scheint er ja zu nehmen. Ich habe im Moment keine Idee, ist in Deinem Environment ("env" bzw. "set") auch nix rsync-iges drin?Last edited by toralf on Fri Apr 24, 2020 9:16 pm; edited 1 time in total

----------

## Josef.95

Hast in der make.conf eventuell noch etwas wie

PORTDIR=

DISTDIR=

PKGDIR=

gesetzt was nicht mit der location = aus der repos.conf zusammenpasst?

----------

## Schattenschlag

@toralf den pfad /var/db/repos/gentoo nimmt er immer egal was ich da reinschreibe.

was genau meinst du damit ? *Quote:*   

> 
> 
> Environment ("env" bzw. "set") auch nix rsync-iges drin?
> 
> 

 

verwendet wird gentoo-xfce-openrc

```

stahlwerk ~ # emerge -s sync

[ Results for search key : sync ]

Searching...

*  net-libs/libasyncns

      Latest version installed: 0.8-r4

      Homepage:      http://0pointer.de/lennart/projects/libasyncns/

      Description:   C library for executing name service queries asynchronously

      License:       LGPL-2.1

*  net-misc/rsync

      Latest version installed: 3.1.3

      Homepage:      https://rsync.samba.org/

      Description:   File transfer program to keep remote files into sync

      License:       GPL-3

```

@josef.95 jup das steht alles noch drinnen ... wurde so bei der Installation angelegt. Ich hab es nicht hinzugefügt.

```
# These settings were set by the catalyst build script that automatically

# built this stage.

# Please consult /usr/share/portage/config/make.conf.example for a more

# detailed example.

COMMON_FLAGS="-O2 -pipe"

CFLAGS="${COMMON_FLAGS}"

CXXFLAGS="${COMMON_FLAGS}"

FCFLAGS="${COMMON_FLAGS}"

FFLAGS="${COMMON_FLAGS}"

# NOTE: This stage was built with the bindist Use flag enabled

 PORTDIR="/var/db/repos/gentoo"

 DISTDIR="/var/cache/distfiles"

 PKGDIR="/var/cache/binpkgs"

# This sets the language of build output to English.

# Please keep this setting intact when reporting bugs.

LC_MESSAGES=C

MAKEOPTS="-j9"

USE="X gtk gtk3 dvd dvb drm dvdr cdr fuse mtp udisks alsa nvidia bindist pulseaudio ffmpeg udev xcomposite\

     thunar googledrive java pdfimport startup-notification raw scrobbler xinerama mp3 wma-fixed\

     theora webp  zvbi\

     jpg elogind -gpm -bluetooth -qt4 -qt5 -kde -gnome -consolekit"

VIDEO_CARDS="nvidia"

GRUB_PLATFORMS="efi-64 pc"

INPUT_DEVICES="libinput"

ABI_X86="64 32"

LINGUAS="de"
```

Bei deaktivierten 

# NOTE: This stage was built with the bindist Use flag enabled

# PORTDIR="/var/db/repos/gentoo"

# DISTDIR="/var/cache/distfiles"

# PKGDIR="/var/cache/binpkgs"

```
stahlwerk ~ # date

Sa 25. Apr 10:30:50 CEST 2020

stahlwerk ~ # emerge --sync

>>> Syncing repository 'gentoo' into '/var/db/repos/gentoo'...

 * Using keys from /usr/share/openpgp-keys/gentoo-release.asc

 * Refreshing keys via WKD ...                                                                                                 [ ok ]

>>> Starting rsync with rsync://[2a00:1828:a00d:ffff::6]/gentoo-portage...

Welcome to turnstone.gentoo.org / rsync.gentoo.org

Server Address : 89.238.71.6, 2a00:1828:a00d:ffff::6

Contact Name   : mirror-admin@gentoo.org

Hardware       : 16 x Intel(R) Xeon(R) CPU E5530 @ 2.40GHz, 24160MB RAM

Sponsor        : Manitu GmbH, St. Wendel, Germany

Please note: common gentoo-netiquette says you should not sync more

than once a day.  Users who abuse the rsync.gentoo.org rotation

may be added to a temporary ban list.

MOTD autogenerated by update-rsync-motd on Thu Apr  4 19:04:00 UTC 2019
```

Anderes mal .. muss ich bei Git was einstellen ? oder fehlt mir irgendein zwischen programm ?

```
stahlwerk ~ # rc-update 

               binfmt | boot                                   

             bootmisc | boot                                   

              cgroups |                                 sysinit

               cronie |      default                           

                 dbus |      default                           

                dmesg |                                 sysinit

              elogind | boot                                   

                 fsck | boot                                   

             hostname | boot                                   

              hwclock | boot                                   

              keymaps | boot                                   

            killprocs |                        shutdown        

    kmod-static-nodes |                                 sysinit

                local |      default nonetwork                 

           localmount | boot                                   

             loopback | boot                                   

              modules | boot                                   

             mount-ro |                        shutdown        

                 mtab | boot                                   

          net.enp10s0 |      default                           

             netmount |      default                           

           ntp-client |      default                           

     opentmpfiles-dev |                                 sysinit

   opentmpfiles-setup | boot                                   

               procfs | boot                                   

                 root | boot                                   

         save-keymaps | boot                                   

    save-termencoding | boot                                   

            savecache |                        shutdown        

                 swap | boot                                   

               sysctl | boot                                   

                sysfs |                                 sysinit

             sysklogd |      default                           

         termencoding | boot                                   

                 udev |                                 sysinit

         udev-trigger |                                 sysinit

              urandom | boot                                   

                  xdm |      default   
```

----------

## Josef.95

Jo, PORTDIR="/var/db/repos/gentoo" (aus der make.conf)

passt nicht mit deinem

location = /usr/portage (aus der repos.conf) zusammen.

Vorschlag: Lass

 PORTDIR="/var/db/repos/gentoo"

 DISTDIR="/var/cache/distfiles"

 PKGDIR="/var/cache/binpkgs"

in der make.conf so wie es war, und passe dann deine repos.conf passend an.

----------

## Schattenschlag

Hmm ich hab jetzt nochmal alles neu erstellt ... also mit den config. Einstellung von toralf (bis auf die libressl und local)

hab alles gelöscht unter /var/db/repos/gentoo 

und es wird weiterhin git ignoriert ... ich finde nicht mal eine Fehlermeldung oder Error  das macht mich gerade etwas verrückt nicht zu wissen an was es liegt .. grrrr 

soweit ich das mitbekommen habe hier https://forums.gentoo.org/viewtopic-t-1072466-start-0.html

sollte ja die Ausgabe so aussehen 

```
# emerge --sync

>>> Syncing repository 'gentoo' into '/usr/portage'...

/usr/bin/git clone --depth 1 https://github.com/gentoo-mirror/gentoo.git . 
```

unter /usr/bin/ wäre git vorhanden 

```
git

git-cvsserver

git-receive-pack

git-shell

git-upload-archive

git-upload-pack
```

----------

## franzf

Was bitte steht in der /etc/portage/repos.conf/gentoo.conf.bak?

HINT: Es werden ALLE Dateien eingelesen, nicht nur die mit Endung ".conf".

Wird denn das repos.conf als directory bald verpflichtend?

IMO macht das für package.use/accpect_keywords Sinn, vor allem wenn man viel drin stehen hat.

repos.conf, vor allem für nur ein repo, würde ich aber in nur dem einen file -- /etc/portage/repos.conf -- vornehmen.

Ich hab da sogar mehrere drinstehen ohne dass es unübersichtlich wird.

----------

## Schattenschlag

atler schwede ... danke franzf 

die gentoo.conf.bak Datei war schuld ... ich sichere immer meine daten vorher ....

die hab ich verschoben und nun läuft es ... 

Ich wusste nicht das alle Daten eingelesen werden .... dachte nur die mit config. ( wäre das sicherheitstechnisch nicht besser das zu ändern ? )

```

stahlwerk ~ # emerge --sync

>>> Syncing repository 'gentoo' into '/var/db/repos/gentoo'...

/usr/bin/git clone --depth 1 https://github.com/gentoo-mirror/gentoo.git .

```

aber es läuft yeah  :Smile: 

tut mir leid das wegen der .bak Datei .. ich wusste es wirklich nicht das die schuld ist  :Sad:   :Embarassed:   :Embarassed: 

danke für eure Hilfe .....

----------

## franzf

Schön dass es jetzt läuft.

 *Schattenschlag wrote:*   

> Ich wusste nicht das alle Daten eingelesen werden .... dachte nur die mit config. ( wäre das sicherheitstechnisch nicht besser das zu ändern ? )

 

Sicherheit? Du meinst dass der User sicher keinen sch* baut? xD

Zwei Ansätze, dass du deine alten Dateien einfach backuppen kannst.

* Die eigentlichen Dateien liegen irgendwo anders (z.B. irgendwo unter /root oder in /etc/conf.d/portage) und nur die benötigten .config Dateien werden nach /etc/portage/wasauchimmer/ gesymlinkt

  Dann kannst du so viele .bak Dateien anlegen wie du willst

* Dein /etc/portage unter Versionskontrolle nehmen. git bietet sich an.

  Dann kannst du in den Dateien rumfuhrwerken wie du willst. Wenn was schiefgeht kannst du einfach git revert'en

----------

## Schattenschlag

danke für die tipps, werd das mit git mal in betracht ziehen am hauptsystem und dem kleinen rechner hier  ... sobald ich wieder vor dem sitzen kann (was leider noch dauern kann dank covid)

----------

