Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index Assistance Portage & Programming
  • Search

[Solved] Basic ebuild hacking help for updating freac ebuild

Problems with emerge or ebuilds? Have a basic programming question about C, PHP, Perl, BASH or something else?
Post Reply
Advanced search
5 posts • Page 1 of 1
Author
Message
jasn
Guru
Guru
User avatar
Posts: 439
Joined: Thu May 05, 2005 4:12 pm
Location: Maryland, US

[Solved] Basic ebuild hacking help for updating freac ebuild

  • Quote

Post by jasn » Sat Oct 06, 2018 5:47 pm

I had installed the fre:ac audio converter from the betagarden overlay in a previous installation. For my new system, since the ebuilds hadn't been updated, I thought I could just take the ebuilds for media-sound/freac, and its dependencies, media-libs/freac-cdk, and x11-libs/smooth, copy them to my local overlay and rename them, to update and install them. (I naively thought this mostly because I haven't a clue about ebuild syntax..)

I realized that in addition to changing the ebuild name, I also needed to update the SRC_URIs, as well. For the smooth library, I renamed the betagarden ebuild, smooth-0.8.72.0_pre2.ebuild, to smooth-0.8.74.0_pre4.ebuild, and edited the SRC_URI to directly point to the SF source code archive download link of, https://sourceforge.net/projects/smooth ... re4.tar.gz. The library then appeared to emerge correctly.

For the betagarden ebuilds of freac-20151115.ebuild, and freac-cdk-20151115.ebuild, I eventually renamed them to freac-20180913.ebuild, and freac-cdk-20180913.ebuild, respectively, (after trying naming variations that included an _alpha1 append, but for which the ebuild [...] digest command rejected the ebuild name). I also edited the SRC_URI to point to the direct link for the github source code archive download links listed here. Unfortunately the freac-cdk emerge fails with the simplest of errors indicating to me, that my hasty rename hacking doesn't work;

Code: Select all

The source directory '/var/tmp/portage/media-libs/freac-cdk-20180913/work/freac-cdk-20180913' doesn't exist
because of course the actual source directory is;

Code: Select all

/var/tmp/portage/media-libs/freac-cdk-20180913/work/freac-cdk-1.1-alpha-20180913
I'd appreciate it if someone could look over the betagarden ebuilds above, and the source archive download links, and suggest what I should actually be renaming these ebuilds to in my local overlay, and what SRC_URIs I should be using, in order to properly install everything.

TIA
Last edited by jasn on Sat Oct 06, 2018 8:43 pm, edited 2 times in total.
Top
Tony0945
Watchman
Watchman
Posts: 5127
Joined: Tue Jul 25, 2006 12:19 am
Location: Illinois, USA

  • Quote

Post by Tony0945 » Sat Oct 06, 2018 6:20 pm

No need to rename them unless there is a conflict within the overlay. I was going to say official tree but you can always eliminate that with a line

Code: Select all

official-dir/official-name::gentoo
to package.mask.
i.e.

Code: Select all

sys-fs/udev-init-scripts::gentoo
On my system only overlay init-scripts can be emerged.

OTOH, if the package and version exists and is installed, and you want to massage the package, then, yes, you have to do more surgery like repacking the package and putting it on a local web server, or doodling with the config in _src_configure() or some other renaming thing.
I'm having a similar problem. https://forums.gentoo.org/viewtopic-t-1 ... ight-.html

I'm not familiar with your application so I can't be specific.
I thought I could just take the ebuilds for media-sound/freac, and its dependencies, media-libs/freac-cdk, and x11-libs/smooth, copy them to my local overlay and rename them,
Did the version change? Then you can keep the name and just renumber it.
Is the package the same but will not longer build? Then keep the same name and number in your local overlay and mask the other by repo name as in the examples above.

Code: Select all

# eix freac
No matches found
Doesn't seem to be a conflict.
Top
Hu
Administrator
Administrator
Posts: 24386
Joined: Tue Mar 06, 2007 5:38 am

  • Quote

Post by Hu » Sat Oct 06, 2018 8:02 pm

By default, the expected unpack path is derived from the package name and version. Upstream is expected to package things with the proper directory structure for this to work transparently. When they don't, the ebuild maintainer must either override $S to set the actual path or repackage upstream's sources so have the expected path. For well-behaved packages, SRC_URI can be automatically derived from the package version, allowing a rename to be sufficient to switch to the new version. The linked smooth ebuild already has an override for $S on line 43. Follow that style for the failing ebuilds. Use variables wherever you can, so that the override has a chance of working with other Portage build directories, other package versions, etc.
Top
jasn
Guru
Guru
User avatar
Posts: 439
Joined: Thu May 05, 2005 4:12 pm
Location: Maryland, US

  • Quote

Post by jasn » Sat Oct 06, 2018 8:50 pm

Thanks for the responses to the thread Tony and Hu..

Tony, I apologize for not making clear that this was a new system installation, and that freac isn't available in portage, or any other overlay. I was simply trying to hack together an install of the most recent version of the program, using an outdated ebuild. I've edited my original post to reflect that this was a new system installation.

Hu, thanks for pointing out how to change the working directory within the ebuild, and after doing so for each of the freac and freac-cdk ebuilds, I was able to emerge everything.

Jason
Top
Tony0945
Watchman
Watchman
Posts: 5127
Joined: Tue Jul 25, 2006 12:19 am
Location: Illinois, USA

  • Quote

Post by Tony0945 » Mon Oct 08, 2018 7:38 pm

No need to apologize!
Top
Post Reply

5 posts • Page 1 of 1

Return to “Portage & Programming”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic