frrouting / gentoo-overlay Goto Github PK
View Code? Open in Web Editor NEWFRR Gentoo Overlay
FRR Gentoo Overlay
FRR and known good libyang versions:
FRR version | libyang version |
---|---|
7.0 or less | 0.16-r3 |
7.1 | 0.16-r3 |
7.2 | 0.16-r3 |
7.3 | 0.16-r3 |
7.4 | 0.16-r3 (maybe 1.0.167) |
>7.4 | 1.0.167 |
libyang
0.16-r3 in FRR 7.3 or lesser by default (I've run into some problems using newer versions).libyang
ebuild to 1.0.167 (from 1.0.109).libyang
1.0.167 in FRR 7.4 before defaulting it there.master
will soon default to libyang
1.0.167 and will no longer use 0.16-r3 ( see FRRouting/frr#6376 )watchfrr
instead of routing daemons in init scripts/systemdfrr-reload.py
.If anyone feels like doing any of the activities above, please let me know. I'll slowly work on these as I find time.
frr-6 and frr-7 ebuilds fail with the following error:
OSError: [Errno 2] No such file or directory: '/var/tmp/portage/net-misc/frr-7.0/files/systemd/no.service'
Issue appears to be in src_install()
function with usage of usex
. Per ebuild(5):
usex <USE flag> [true output] [false output] [true suffix] [false suffix]
If USE flag is set, echo [true output][true suffix] (defaults to "yes"), otherwise echo [false output][false suffix] (defaults to "no").
Since there is no false output provided, it defaults to "no". Suggest using empty string in false argument as workaround - $(usex bgp bgpd "")
, etc.
root@g17-rt-a:~ # rcfrr restart
* Reloading FRR configuration ...
* Failed to reload (check /var/run/frr/reload.log) [ ok ]
[127] root@g17-rt-a:~ # cat /var/run/frr/reload.log
Traceback (most recent call last):
File "/usr/lib/frr/frr-reload.py", line 45, in <module>
from ipaddr import IPv6Address, IPNetwork
ImportError: No module named ipaddr
root@g17-rt-a:~ # eix ipaddr
...
* dev-python/ipaddr
Verfügbare Versionen: 2.2.0 {PYTHON_TARGETS="python2_7 python3_6 python3_7 python3_8"}
Startseite: https://github.com/google/ipaddr-py https://pypi.org/project/ipaddr/
Beschreibung: Python IP address manipulation library
...
3 Treffer
root@g17-rt-a:~ # emerge -1tav dev-python/ipaddr
Local copy of remote index is up-to-date and will be used.
* IMPORTANT: 31 news items need reading for repository 'gentoo'.
* Use eselect news read to view new items.
Local copy of remote index is up-to-date and will be used.
These are the packages that would be merged, in reverse order:
Calculating dependencies... done!
[ebuild N ] dev-python/ipaddr-2.2.0::gentoo PYTHON_TARGETS="python2_7 python3_7 -python3_6 -python3_8" 26 KiB
Total: 1 package (1 new), Size of downloads: 26 KiB
Would you like to merge these packages? [Yes/No]
>>> Verifying ebuild manifests
>>> Emerging (1 of 1) dev-python/ipaddr-2.2.0::gentoo
>>> Installing (1 of 1) dev-python/ipaddr-2.2.0::gentoo
>>> Jobs: 1 of 1 complete Load avg: 0.37, 0.26, 0.20
>>> Auto-cleaning packages...
>>> No outdated packages were found on your system.
* GNU info directory index is up-to-date.
[1] root@g17-rt-a:~ # rcfrr restart
* Reloading FRR configuration ... [ ok ]
root@g17-rt-a:~ #
the CI should've failed for #2 however it didnt.
I suspect the subshell not returning correct exit codes.
I tried to build net-misc/frr-7.1-r1
but it is failing in my Gentoo stable.
Compilation error message:
pimd/pim_register.c: In function ‘pim_register_join’:
pimd/pim_register.c:64:41: error: ‘TRUE’ undeclared (first use in this function)
64 | pim_vxlan_update_sg_reg_state(pim, up, TRUE /*reg_join*/);
| ^~~~
pimd/pim_register.c:64:41: note: each undeclared identifier is reported only once for each function it appears in
pimd/pim_register.c: In function ‘pim_register_stop_recv’:
pimd/pim_register.c:151:4: error: ‘FALSE’ undeclared (first use in this function)
151 | FALSE /*reg_join*/);
| ^~~~~
This problem was recently fixed in upstream (related FRRouting/frr#6208 , FRRouting/frr#6209). Basically json-c upstream removed some macro booleans and some code in FRR was expecting it, the FRR fix was to migrate all booleans to stdbool
format but I think the PRs are scattered.
I'm not sure how to fix this: patch files, downgrade json-c or just wait for new FRR ebuild...
It's taking well over 4h now for a PR.
This is inefficient. I suggest moving the CI to the basics, being x86 hardened and amd64 hardened-nomultilib. If it compiles fine there, it should compile fine on the normal stage3 as well.
All the scripts are linked to zebra, but zebra is linked to itself:
rr2 ~ # file /etc/init.d/ospfd
/etc/init.d/ospfd: broken symbolic link to zebra
rr2 ~ # file /etc/init.d/bgpd
/etc/init.d/bgpd: broken symbolic link to zebra
rr2 ~ # file /etc/init.d/zebra
/etc/init.d/zebra: broken symbolic link to zebra
The manifest file wasn't updated after adding the ebuild for 7.5.1
# net-libs/libyang/libyang-0.16.104.ebuild: line 6: please migrate from 'cmake-utils' to 'cmake'
# net-libs/libyang/libyang-1.0.109.ebuild: line 6: please migrate from 'cmake-utils' to 'cmake'
# net-libs/libyang/libyang-1.0.167.ebuild: line 6: please migrate from 'cmake-utils' to 'cmake'
# net-libs/libyang/libyang-9999.ebuild: line 6: please migrate from 'cmake-utils' to 'cmake'
# net-libs/rtrlib/rtrlib-0.5.0.ebuild: line 6: please migrate from 'cmake-utils' to 'cmake'
# net-libs/rtrlib/rtrlib-0.6.0.ebuild: line 6: please migrate from 'cmake-utils' to 'cmake'
# net-libs/rtrlib/rtrlib-0.6.1.ebuild: line 6: please migrate from 'cmake-utils' to 'cmake'
# net-libs/rtrlib/rtrlib-0.6.2.ebuild: line 6: please migrate from 'cmake-utils' to 'cmake'
# net-libs/rtrlib/rtrlib-0.6.3.ebuild: line 6: please migrate from 'cmake-utils' to 'cmake'
# net-libs/rtrlib/rtrlib-9999.ebuild: line 6: please migrate from 'cmake-utils' to 'cmake'
user.eclass was removedyesterday, gentoo/gentoo@dd1ebe4
looks like some Ebuilds have to be touched, a lot of newer versions are missing, anyway.
* user.eclass could not be found by inherit()
*
* Call stack:
* ebuild.sh, line 614: Called source '/var/db/repos/frr-gentoo/net-misc/frr/frr-7.1-r2.ebuild'
* frr-7.1-r2.ebuild, line 6: Called inherit 'autotools' 'eutils' 'flag-o-matic' 'multilib' 'pam' 'readme.gentoo-r1' 'systemd' 'tmpfiles' 'user' 'vcs-snapshot'
- * ebuild.sh, line 259: Called die
* The specific snippet of code:
* [[ -z ${location} ]] && die "${1}.eclass could not be found by inherit()"
*
Thanks a lot for this great piece of software.
The overlay contains only version 6.0.0, 6.0.2 is an important security update:
https://github.com/FRRouting/frr/releases
I think we should at most keep the last 3 recent releases and drop all the old stuff to de-clutter this.
I dont even know if the old releases compile correctly anymore, altho they should
Hi, I'm wondering if you have any previous experience with cross-compilation of frr.
I'm trying to build this using crossdev wrapper scripts, but I'm hitting issues, I tried to modify frr ebuild to do out-of-source builds, but no luck so far. If you have any pointers/tips for cross-compilation it would be greatly appreciated.
Thanks 😃
This includes a new build target for staticd
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.