On Fri, Feb 25, 2011 at 8:13 AM, James <wirel...@tampabay.rr.com> wrote:
> Hello, > > Is the link below the best "howto" guide as to using > an existing ebuild to hack a new ebuild? JFFNMS has > been languishing despite repeated requests for a version > bump; so I'm taking the plunge and going to update it > on one of my systems..... > > http://en.gentoo-wiki.com/wiki/Creating_an_Updated_Ebuild > > > Also, I found this guide: > > http://devmanual.gentoo.org/ > and > man 5 ebuild > > > Any other documents I should reference before > attempinging to update an ebuild on my own > person overlay dir? > > Comments and ideas are most welcome.... > > > James > > > Saw that you linked to the "creating an updated ebuild" from gentoo-wiki, so what I say may overlay quite a bit, but hear me out: It depends on how the ebuild is built. If it references the version by the ebuild file name, which is very common, you can create an overlay for the ebuild, copy the ebuild to it, rename the ebuild file to have the new version number as part of it, digest the ebuild, make sure the overlay is listed in your make.conf file, then try to emerge it. I did this with Webmin. Yes, I know it's masked and new versions have effectively been dropped from portage; but I use it, and it worked fine. Maybe I should break it down a little: Create the appropriate directory in an overlay dir. For Webmin, I had to create app-admin, then webmin: # mkdir -p /usr/local/portage/overlay/app-admin/webmin mark@allanon /usr/local/portage/overlay/app-admin/webmin $ pwd /usr/local/portage/overlay/app-admin/webmin I then copied webmin-1.510.ebuild from the official portage tree, /usr/portage/app-admin/webmin, to it's new location and filename: # cp /usr/portage/app-admin/webmin/webmin-1.510.ebuild /usr/local/portage/overlay/app-admin/webmin/webmin-1.530.ebuild Then digest the ebuild to generate a manifest, otherwise portage will complain when you try to emerge it: # cd /usr/local/portage/overlay/app-admin/webmin # ebuild webmin-1.530.ebuild digest Now add the overlay to your make.conf: PORTDIR_OVERLAY="/usr/local/portage/overlay" If you're using EIX to sync/search portage, you'll need to run eix-update after doing this. Now try to emerge the newest Webmin, but first you have to unmask it. I like to use autounmask for that: Create your package.???* directories (or files) in /etc/portage (I like the dir option), if you don't already have them: # for a in keywords unmask use; do mkdir -p /etc/portage/package.${a}; done If you just want the files: # for a in keywords unmask use; do touch /etc/portage/package.${a}; done Emerge autounmask if you don't have it: # emerge app-portage/autounmask Then unmask Webmin 1.530: # autounmask =app-admin/webmin-1.530 Now we can emerge it! # emerge -av =app-admin/webmin-1.530 I've done this on 3 servers to get Webmin on them, and have used this setup every time. Chances are the ebuild you want to use may be this simple. Ok, so I scrolled down and saw your reply mentioning the program, jffnms. What I did with Webmin can all most be done exactly the same with jffnms, except you need to modify a line of the ebuild to point to *.tgz instead of *.tar.gz. When I did this, I was able to successfully fetch the gzipped tar file from Sourceforge. You can use sed to correct it: sed -i -e 's/.tar.gz/.tgz/g' /usr/local/portage/overlay/net-analyzer/jffnms/jffnms-0.8.5.ebuild Or download the ebuild I've attached, follow the link you references to create the overlay dir/add to make.conf, etc. That should work. Let me know how it goes.
jffnms-0.8.5.ebuild
Description: Binary data