Summary: | net-p2p/cjdns - Encrypted networking for regular people | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Emery Hemingway <emery> |
Component: | Current packages | Assignee: | Default Assignee for New Packages <maintainer-wanted> |
Status: | UNCONFIRMED --- | ||
Severity: | enhancement | CC: | proxy-maint |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
URL: | https://gitweb.gentoo.org/user/emery.git/tree/net-p2p/cjdns | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
cjdns-9999.ebuild
cjdns.runscript cjdns-9999.ebuild cjdns.runscript cjdns.runscript cjdns-20130628.ebuild FindNACL.cmake-20130628.diff cjdns-20130728.ebuild FindLibuv.cmake-20130728.diff Findlibsodium.cmake-20130728.diff cjdns.runscript FindNaCl.cmake-20130728.diff cjdns-20140303.ebuild absolute-unit.patch cjdns-17.1.ebuild cjdns.runscript cjdns-17.1.ebuild cjdns-18.ebuild cjdns-20.ebuild |
Description
Emery Hemingway
2013-06-24 18:38:31 UTC
Created attachment 351826 [details]
cjdns-9999.ebuild
CJDNS is currently without any releases, so a live ebuild or an ebuild pegged to a revision must be used.
Created attachment 351828 [details]
cjdns.runscript
Um, what's going on here? init.d script: A routing engine designed for security, scalability, speed and ease of use ebuild: Distributed routing engine and TUN interface HOMEPAGE: Encrypted networking for regular people (In reply to Jeroen Roovers from comment #3) > Um, what's going on here? > > init.d script: A routing engine designed for security, scalability, speed > and ease of use > ebuild: Distributed routing engine and TUN interface > > HOMEPAGE: Encrypted networking for regular people Sorry, the init.d script description came straight from the upstream systemd service and I think I came up with the ebuild description a while back. Created attachment 351918 [details]
cjdns-9999.ebuild
normalized description
Created attachment 351920 [details]
cjdns.runscript
normalized description
Created attachment 352552 [details]
cjdns.runscript
Attempts to modprobe TUN if /dev/net/tun does not exist.
Created attachment 352562 [details]
cjdns-20130628.ebuild
PIE excutables depend on hardened USE flag.
Explicitly uses external libNaCL.
Git version properly cooked in.
Created attachment 352564 [details, diff]
FindNACL.cmake-20130628.diff
Patch to make CMake ignorant of bundled libNaCL.
BTW, this is all in the emery overy. Created attachment 354670 [details]
cjdns-20130728.ebuild
Created attachment 354672 [details, diff]
FindLibuv.cmake-20130728.diff
Created attachment 354674 [details, diff]
Findlibsodium.cmake-20130728.diff
Created attachment 354676 [details]
cjdns.runscript
Created attachment 354678 [details, diff]
FindNaCl.cmake-20130728.diff
I can proxy-maint it, but I don't want maintain it myself. also, why is there no proper release git-2 in conjunction with a non-live ebuild is a no-go anyway... so either we do this boring timestamp thing or tell upstream to do... well, releases (In reply to Emery Hemingway from comment #12) > Created attachment 354672 [details, diff] [details, diff] > FindLibuv.cmake-20130728.diff libuv has a pkgconfig file, use that (In reply to Emery Hemingway from comment #13) > Created attachment 354674 [details, diff] [details, diff] > Findlibsodium.cmake-20130728.diff libsodium has a pkg-config file, use that (In reply to Emery Hemingway from comment #14) > Created attachment 354676 [details] > cjdns.runscript looks a bit raw. how do i stop the service, why not use start-stop-daemon? * update the header * as said earlier... no git-2 in non-live ebuilds, make a snapshto or get upstream to do actual releases * keywords are not in alphabetical order * REQUIRED_USE was meant for libraries to not break reverse deps, not to express general use-flag constraints. These can be expressed in metadata.xml and warnings inside the ebuild. Pick something sane if the user configured use flags don't make sense * why no RDEPEND? do we build everything static? that sucks * the compiler check in src_prepare will probably failr hard with non-gcc compilers * use-flag dependant patches are bad (except for stuff like vanilla use flag)... so apply them unconditionally (if that's not possible, then the patch is not good) * does the toolchain stuff in src_configure work with non-gcc compilers? * "cd" in src_test needs a "|| die" * use ${FILESDIR} instead of $FILESDIR * mv in src_install needs a "|| die"... but will break running src_install multiple times, so you probably want "newsbin" * to pkg_postinst... I'm not sure if "|| die" has been made to work with subshells... also, it is debatable if it's a good thing to die in pkg_postinst at all Created attachment 375298 [details]
cjdns-20140303.ebuild
This updated ebuild corrects or avoids the issues mentioned above (but is not free of new ones).
The build system is now written in NodeJs, and yes, that is as awful as it sounds.
Cjdns comes with bundled copies of NaCl and Libuv that are linked in static, this is a problem when cross-compiling NaCl, which is why there were patches to use the system copy, but fixing that now also requires fixing the build system.
If someone else would like to maintain this, that would be great, as I'm moving over to Nixos.
Created attachment 375300 [details, diff]
absolute-unit.patch
This makes the systemd unit execute an absolute rather than relative path.
(In reply to Emery Hemingway from comment #22) > Created attachment 375298345 [details346] > cjdns-20140303.ebuild > to python-single-r1: * you are missing a call to python-single-r1_pkg_setup which means you are actually using whatever python version is eselected... * don't use the dev-lyng/python:2.7 dep-string directly, use ${PYTHON_DEPS} * "append-flags -Wno-error" that is not always reliable... better remove the flag from the build system oh, and REQUIRED_USE="${PYTHON_REQUIRED_USE}" There are stable releases now: https://github.com/cjdelisle/cjdns/releases So you can change versions from date-based to the ones from github release. Created attachment 422000 [details]
cjdns-17.1.ebuild
Created attachment 422002 [details]
cjdns.runscript
Created attachment 422004 [details]
cjdns-17.1.ebuild
I've had this in my personal overay since sometime in 2012 and I don't have time to maintain it anymore. There are other people who use it more than I, so can we please get this in the main tree? Hi, I bumped ebuild to v18 and added use flag "tools" to install python contrib tools too. I can try maintaining this package, not that I see lots of upstream activity recently. Created attachment 456280 [details]
cjdns-18.ebuild
Created attachment 487542 [details]
cjdns-20.ebuild
Updated ebuild
Original cjdns draft wiki page no longer available(https://gitweb.gentoo.org/user/emery.git/tree/net-p2p/cjdns) A new one was made by Maffblaster can be found here: https://wiki.gentoo.org/wiki/User:Maffblaster/Drafts/cjdns |