Forums

Skip to content

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

Implementing a local repository to use removed pkg

Problems with emerge or ebuilds? Have a basic programming question about C, PHP, Perl, BASH or something else?
Post Reply
Advanced search
21 posts • Page 1 of 1
Author
Message
eohrnberger
Apprentice
Apprentice
Posts: 250
Joined: Thu Dec 09, 2004 5:42 pm

Implementing a local repository to use removed pkg

  • Quote

Post by eohrnberger » Mon Jul 29, 2024 10:14 pm

Hi all.

I wasn't sure where to place this thread, since the thread "biglybt as replacement for vuze/azureus" (viewtopic-t-1160907-start-0-postdays-0- ... ight-.html) is here, I thought perhaps this was the correct place.

Yes, I know that vuze/azureus has been retired from portage as there are no more upstream updates.

Still, vuze/azureus served me well, and I wish to continue to use it, even if the version will never moves beyond the last one, 5.7.6.0.

I still have that version's files, vuze-coreplugins-5.7.6.0 and vuze-5.7.6.0, their ebuilds, Manifests support files, etc.

I was considering creating a local private report based on these files, unless there's an easier way to install from them.

What is the correct / best way to proceed?
Top
GDH-gentoo
Advocate
Advocate
User avatar
Posts: 2110
Joined: Sat Jul 20, 2019 7:02 pm
Location: South America

Re: Wanting to continue to use vuze/azureus

  • Quote

Post by GDH-gentoo » Mon Jul 29, 2024 10:46 pm

eohrnberger wrote:I was considering creating a local private report based on these files, unless there's an easier way to install from them.

What is the correct / best way to proceed?
Yes, use a local ebuild repository so that Portage can manage the package.
NeddySeagoon wrote:I'm not a witch, I'm a retired electronics engineer :)
Ionen wrote:As a packager I just don't want things to get messier with weird build systems and multiple toolchains requirements though :)
Top
charles17
Advocate
Advocate
Posts: 3686
Joined: Sun Mar 02, 2008 3:20 pm

  • Quote

Post by charles17 » Tue Jul 30, 2024 6:16 am

Be aware of bug 857663 mentioned in https://gitweb.gentoo.org/repo/gentoo.g ... e50235309b
Also java-ant-2.eclass might go away in a not too far furure.
Top
eohrnberger
Apprentice
Apprentice
Posts: 250
Joined: Thu Dec 09, 2004 5:42 pm

Re: Wanting to continue to use vuze/azureus

  • Quote

Post by eohrnberger » Tue Jul 30, 2024 11:43 pm

GDH-gentoo wrote:
eohrnberger wrote:I was considering creating a local private report based on these files, unless there's an easier way to install from them.

What is the correct / best way to proceed?
Yes, use a local ebuild repository so that Portage can manage the package.
This was my thinking as well.

I was following along the information here: Handbook:AMD64/Portage/CustomTree
(https://wiki.gentoo.org/wiki/Handbook:A ... repository)

Setup the /etc/portage/repos.conf/eselect-repo.conf file:
[localrepo]
location = /var/db/repos/localrepo

/var/db/repos/localrepo/net-p2p/vuze containing the files, but emerge doesn't find it, and is still looking for it in the non-local gentoo repo.

It's like, hmm. I'm missing something.

Would anyone happen to know a reference for setting up a local repo that I could read up on more? Thanks in advance!

@mods: seems this thread might be better grouped in with related portage and local repo config threads.
Top
Hu
Administrator
Administrator
Posts: 24380
Joined: Tue Mar 06, 2007 5:38 am

Re: Wanting to continue to use vuze/azureus

  • Quote

Post by Hu » Wed Jul 31, 2024 12:11 am

eohrnberger wrote:@mods: seems this thread might be better grouped in with related portage and local repo config threads.
Moved. For more reliable service, I suggest reporting the thread, rather than including the note in a post buried in the thread.
Top
logrusx
Advocate
Advocate
User avatar
Posts: 3529
Joined: Thu Feb 22, 2018 2:29 pm

Re: Wanting to continue to use vuze/azureus

  • Quote

Post by logrusx » Wed Jul 31, 2024 8:09 am

eohrnberger wrote:but emerge doesn't find it, and is still looking for it in the non-local gentoo repo.

It's like, hmm. I'm missing something.
Did you run pkgdev manifest or ebuild <file> manifest?
Top
eohrnberger
Apprentice
Apprentice
Posts: 250
Joined: Thu Dec 09, 2004 5:42 pm

Re: Wanting to continue to use vuze/azureus

  • Quote

Post by eohrnberger » Wed Jul 31, 2024 10:05 pm

logrusx wrote:
eohrnberger wrote:but emerge doesn't find it, and is still looking for it in the non-local gentoo repo.

It's like, hmm. I'm missing something.
Did you run pkgdev manifest or ebuild <file> manifest?
No, as there was not calling for either to be run in the documentation which I was reading.

However, now having run them, there's an error result.

while in

Code: Select all

/var/db/repos/localrepo#>pkgdev manifest
 * net-p2p/vuze-5.7.6.0: failed sourcing ebuild: inherit requires unknown eclass: eutils.eclass
while in

Code: Select all

/var/db/repos/localrepo/net-p2p/vuze#>ebuild vuze-5.7.6.0.ebuild manifest
generates the following error output.

Code: Select all

 * ERROR: net-p2p/vuze-5.7.6.0::localrepo failed (depend phase):
 *   eutils.eclass could not be found by inherit()
 *
 * Call stack:
 *             ebuild.sh, line 632:  Called source '/var/portage-remote/db/repos/localrepo/net-p2p/vuze/vuze-5.7.6.0.ebuild'
 *   vuze-5.7.6.0.ebuild, line   8:  Called inherit 'eutils' 'java-pkg-2' 'java-ant-2' 'xdg-utils' 'desktop'
 *             ebuild.sh, line 277:  Called die
 * The specific snippet of code:
 *              [[ -z ${location} ]] && die "${1}.eclass could not be found by inherit()"
 *
 * If you need support, post the output of `emerge --info '=net-p2p/vuze-5.7.6.0::localrepo'`,
 * the complete build log and the output of `emerge -pqv '=net-p2p/vuze-5.7.6.0::localrepo'`.
 * Working directory: '/usr/lib/python3.12/site-packages'
 * S: '/var/tmp/portage/net-p2p/vuze-5.7.6.0/work/vuze-5.7.6.0'
Taking the hint from the error message, here is the output from running emerge --info '=net-p2p/vuze-5.7.6.0::localrepo':

Code: Select all

 * ERROR: net-p2p/vuze-5.7.6.0::localrepo failed (depend phase):
 *   eutils.eclass could not be found by inherit()
 * 
 * Call stack:
 *             ebuild.sh, line 632:  Called source '/var/portage-remote/db/repos/localrepo/net-p2p/vuze/vuze-5.7.6.0.ebuild'
 *   vuze-5.7.6.0.ebuild, line   8:  Called inherit 'eutils' 'java-pkg-2' 'java-ant-2' 'xdg-utils' 'desktop'
 *             ebuild.sh, line 277:  Called die
 * The specific snippet of code:
 *   		[[ -z ${location} ]] && die "${1}.eclass could not be found by inherit()"
 * 
 * If you need support, post the output of `emerge --info '=net-p2p/vuze-5.7.6.0::localrepo'`,
 * the complete build log and the output of `emerge -pqv '=net-p2p/vuze-5.7.6.0::localrepo'`.
 * Working directory: '/usr/lib/python3.12/site-packages'
 * S: '/var/tmp/portage/net-p2p/vuze-5.7.6.0/work/vuze-5.7.6.0'
Portage 3.0.65 (python 3.12.3-final-0, !/usr/portage/gentoo/profiles/default/linux/amd64/23.0/desktop/, gcc-13, glibc-2.39-r6, 6.6.30-gentoo-x86_64 x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-6.6.30-gentoo-x86_64-x86_64-AMD_Phenom-tm-_II_X4_B95_Processor-with-glibc2.39
KiB Mem:     8143988 total,   1284976 free
KiB Swap:   33554428 total,  33554416 free
Timestamp of repository gentoo: Tue, 30 Jul 2024 01:30:01 +0000
Head commit of repository gentoo: 0a6e658bd0ec43d37d54d2e4f6a6a6ab003d5935
Head commit of repository brave-overlay: 9bb7a7913d64a99b43b9c35926c95b2d76bcfc90

Timestamp of repository dilfridge: Fri, 12 Jul 2024 07:49:06 +0000
Head commit of repository dilfridge: 6b6840d91be32a48dcf922269efaa83e35b74e2c

sh bash 5.2_p26-r6
ld GNU ld (Gentoo 2.42 p3) 2.42.0
distcc 3.4 x86_64-pc-linux-gnu [enabled]
ccache version 4.9.1 [enabled]
app-misc/pax-utils:        1.3.7::gentoo
app-shells/bash:           5.2_p26-r6::gentoo
dev-build/autoconf:        2.13-r8::gentoo, 2.69-r9::gentoo, 2.71-r7::gentoo
dev-build/automake:        1.16.5-r2::gentoo
dev-build/cmake:           3.28.5::gentoo
dev-build/libtool:         2.4.7-r4::gentoo
dev-build/make:            4.4.1-r1::gentoo
dev-build/meson:           1.4.1::gentoo
dev-java/java-config:      2.3.4::gentoo
dev-lang/perl:             5.38.2-r3::gentoo
dev-lang/python:           3.10.14_p1-r1::gentoo, 3.11.9-r1::gentoo, 3.12.3-r1::gentoo
dev-lang/rust-bin:         1.79.0::gentoo
dev-util/ccache:           4.9.1-r1::gentoo
sys-apps/baselayout:       2.15::gentoo
sys-apps/openrc:           0.54.2::gentoo
sys-apps/sandbox:          2.38::gentoo
sys-devel/binutils:        2.42-r1::gentoo
sys-devel/binutils-config: 5.5::gentoo
sys-devel/clang:           17.0.6::gentoo, 18.1.8::gentoo
sys-devel/gcc:             13.3.1_p20240614::gentoo
sys-devel/gcc-config:      2.11::gentoo
sys-devel/lld:             17.0.6::gentoo, 18.1.8::gentoo
sys-devel/llvm:            17.0.6::gentoo, 18.1.8-r1::gentoo
sys-kernel/linux-headers:  6.6-r1::gentoo (virtual/os-headers)
sys-libs/glibc:            2.39-r6::gentoo
Repositories:

gentoo
    location: /var/portage-remote/db/repos/gentoo
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000
    volatile: True
    sync-rsync-verify-metamanifest: no
    sync-rsync-verify-max-age: 3
    sync-rsync-verify-jobs: 1
    sync-rsync-extra-opts: 

brave-overlay
    location: /var/portage-remote/db/repos/brave-overlay
    sync-type: git
    sync-uri: https://gitlab.com/jason.oliveira/brave-overlay.git
    masters: gentoo
    volatile: True

dilfridge
    location: /var/portage-remote/db/repos/dilfridge
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/dilfridge.git
    masters: gentoo
    volatile: True

localrepo
    location: /var/portage-remote/db/repos/localrepo
    masters: gentoo
    volatile: True

Binary Repositories:

gentoobinhost
    priority: 1
    sync-uri: https://distfiles.gentoo.org/releases/amd64/binpackages/23.0/x86-64

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="@FREE"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /var/bind /var/spool/munin-async/.ssh"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php8.1/ext-active/ /etc/php/apache2-php8.2/ext-active/ /etc/php/cgi-php8.1/ext-active/ /etc/php/cgi-php8.2/ext-active/ /etc/php/cli-php8.1/ext-active/ /etc/php/cli-php8.2/ext-active/ /etc/php/fpm-php8.1/ext-active/ /etc/php/fpm-php8.2/ext-active/ /etc/php/phpdbg-php8.1/ext-active/ /etc/php/phpdbg-php8.2/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe"
DISTDIR="/var/cache/distfiles"
EMERGE_DEFAULT_OPTS="--autounmask=n"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg buildpkg-live ccache config-protect-if-modified distcc distlocks ebuild-locks fixlafiles getbinpkg ipc-sandbox merge-sync merge-wait multilib-strict network-sandbox news parallel-fetch pid-sandbox pkgdir-index-trusted preserve-libs protect-owned qa-unresolved-soname-deps sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="                                                        http://www.gtlib.gatech.edu/pub/gentoo                                  rsync://rsync.gtlib.gatech.edu/gentoo                                   https://gentoo.osuosl.org/                                              http://gentoo.osuosl.org/                                               https://mirrors.rit.edu/gentoo/                                         http://mirrors.rit.edu/gentoo/                                          ftp://mirrors.rit.edu/gentoo/                                           rsync://mirrors.rit.edu/gentoo/                                         "
LANG="en_US"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs"
LEX="flex"
LINGUAS="en_US"
PKGDIR="/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git --exclude=.zfs"
PORTAGE_TMPDIR="/var/tmp"
PYTHONPATH=" /root/.local/lib64/python3.6/ /root/.local/lib64/python3.6/"
SHELL="/bin/bash"
USE="X a52 aac acl acpi alsa amd64 bluetooth branding bzip2 cairo cdda cdr cet crypt cups dbus dist-kernel dri dts dvd dvdr elogind encode exif flac gdbm gif gles2 gpm gtk gui iconv icu jpeg kf6compat lcms libnotify libtirpc mad mng mp3 mp4 mpeg multilib ncurses nls ogg opengl openmp pam pango pcre pdf png policykit ppds qt5 readline sdl seccomp sound spell ssl startup-notification svg test-rust tiff truetype udev udisks unicode upower usb vorbis vulkan wayland widgets wxwidgets x264 xattr xcb xft xml xv xvid zlib" ABI_X86="64" ADA_TARGET="gcc_12" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_anon authn_dbm authn_file authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir env expires ext_filter file_cache filter headers include info log_config logio mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext sse sse2" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 ntrip navcom oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox" INPUT_DEVICES="libinput" KERNEL="linux" LCD_DEVICES="bayrad cfontz glk hd44780 lb216 lcdm001 mtxorb text" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php8-2" POSTGRES_TARGETS="postgres15" PYTHON_SINGLE_TARGET="python3_12" PYTHON_TARGETS="python3_12" RUBY_TARGETS="ruby31 ruby32" VIDEO_CARDS="amdgpu fbdev intel nouveau radeon radeonsi vesa dummy" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipp2p iface geoip fuzzy condition tarpit sysrq proto logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LFLAGS, LIBTOOL, MAKE, MAKEFLAGS, MAKEOPTS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS
Top
Hu
Administrator
Administrator
Posts: 24380
Joined: Tue Mar 06, 2007 5:38 am

  • Quote

Post by Hu » Wed Jul 31, 2024 10:08 pm

The ebuild you retrieved uses an eclass that no longer exists. You will need to recover that eclass, or patch the ebuild not to use it.
Top
eohrnberger
Apprentice
Apprentice
Posts: 250
Joined: Thu Dec 09, 2004 5:42 pm

  • Quote

Post by eohrnberger » Wed Jul 31, 2024 10:33 pm

Hu wrote:The ebuild you retrieved uses an eclass that no longer exists. You will need to recover that eclass, or patch the ebuild not to use it.
Thanks for your patience and responses. I very much appreciate them.

So OK.
I've located an eutils.eclass file. It's from a system where I was trying to migrate from the version 17 profile to the most current profile, v23. This system is scheduled to be scratched when I complete the build which I'm working on, which includes getting vuze installed.

The target version 23 profile system, where I want to install vuse, has all its eclass files in:
/usr/portage/gentoo/eclass

In the /usr/portage/ directory it also has brave-overlay and dilfridge directories, so I'm thinking that I'd need to add a localrepo directory, with that add an eclass subdir, to which to copy the missing eclass files.

Do this sound / appear to be correct?

Also, is there a location which portage searches under the /var/db/repos/localrepo where these eclass files can reside? I'm thinking in the future, should I chose to remove the localrepo, that these eclass files wouldn't be needed, and could be removed along with the other localrepo specific files.

Again, thanks for your patience and responses. I very much appreciate them.
Top
Hu
Administrator
Administrator
Posts: 24380
Joined: Tue Mar 06, 2007 5:38 am

  • Quote

Post by Hu » Sun Aug 04, 2024 2:22 pm

As I remember how this works, each repository can have its own eclass directory at its top level, so you would want /var/db/repos/localrepo/eclass/eutils.eclass and /var/db/repos/localrepo/net-p2p/vuze/vuze-5.7.6.0.ebuild. This nicely keeps the files somewhat related, so if you later remove /var/db/repos/localrepo, both vuze and the eclass are deleted.
Top
eohrnberger
Apprentice
Apprentice
Posts: 250
Joined: Thu Dec 09, 2004 5:42 pm

  • Quote

Post by eohrnberger » Mon Aug 05, 2024 9:26 pm

Hu wrote:As I remember how this works, each repository can have its own eclass directory at its top level, so you would want /var/db/repos/localrepo/eclass/eutils.eclass and /var/db/repos/localrepo/net-p2p/vuze/vuze-5.7.6.0.ebuild. This nicely keeps the files somewhat related, so if you later remove /var/db/repos/localrepo, both vuze and the eclass are deleted.
Hey, that's good info.

OK, so I copied the desktop.eclass, eutils.eclass, java-ant-2.eclass, java-pkg-2.eclass, xdg-utils.eclass from my source to /var/db/repos/localrepo/eclass and re-executed the search:

emerge -s net-p2p/vuze
resulting in the following error message:

Code: Select all

 * ERROR: net-p2p/vuze-5.7.6.0::localrepo failed (depend phase):
 *   eutils: EAPI 7 not supported
 *
 * Call stack:
 *             ebuild.sh, line 632:  Called source '/var/portage-remote/db/repos/localrepo/net-p2p/vuze/vuze-5.7.6.0.ebuild'
 *   vuze-5.7.6.0.ebuild, line   8:  Called inherit 'eutils' 'java-pkg-2' 'java-ant-2' 'xdg-utils' 'desktop'
 *             ebuild.sh, line 312:  Called __qa_source '/var/portage-remote/db/repos/localrepo/eclass/eutils.eclass'
 *             ebuild.sh, line 123:  Called source '/var/portage-remote/db/repos/localrepo/eclass/eutils.eclass'
 *         eutils.eclass, line  19:  Called die
 * The specific snippet of code:
 *      *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
I would add that the file: /var/db/repos/localrepo/profiles/eapi contains:
8

I changed this to 7 and tried again, but it didn't change the error message.

Does this mean that I need to go through the eclass files and / or the ebuild files and remove the demand for EAPI 7?
Top
Hu
Administrator
Administrator
Posts: 24380
Joined: Tue Mar 06, 2007 5:38 am

  • Quote

Post by Hu » Mon Aug 05, 2024 11:54 pm

As I read the gentoo.git history, eutils.eclass once supported EAPI 7, but that was removed before the eclass itself was deleted. You can use an older version of eutils.eclass, or modify vuze not to use eutils.eclass. I think eutils.eclass was deprecated and removed because newer EAPI versions offer equivalent functionality (though not necessarily under the same names).
Top
eohrnberger
Apprentice
Apprentice
Posts: 250
Joined: Thu Dec 09, 2004 5:42 pm

  • Quote

Post by eohrnberger » Sat Aug 31, 2024 6:19 pm

Hi all, I've been plugging and poking away at this over the past weeks, but I think I'm stuck.

What I've figured out so far:

There are 3 packages in all that I've identified to emerge for running vuze.

Code: Select all

=net-p2p/vuze-coreplugins-5.7.6.0
=net-p2p/vuze-5.7.6.0.ebuild
=dev-java/swt-3.8.2-r3
=net-p2p/vuze-coreplugins-5.7.6.0
This ebuild didn't require any changes. It's pretty minimal and only downloads the vuze-coreplugins .Zip file.

This, of courese depends on =net-p2p/vuze-coreplugins-5.7.6.0

The changes I've made to this ebuild file are as follows:

1). Since eutils is no longer in the gentoo eclasses, change the inherit line to:

Code: Select all

inherit java-pkg-2 java-ant-2 xdg-utils desktop edos2unix
2). There some packages which were decalred as being dependant on which weren't found in the portage tree, so changed:

Code: Select all

CDEPEND="
	dev-java/log4j:0
	dev-java/swt:3.8[cairo]
    dev-java/json-simple:0
	dev-java/commons-lang:2.1"
to:

Code: Select all

CDEPEND="
	dev-java/commons-cli:1
	dev-java/json-simple
	dev-java/commons-lang"
It's at this point where the emerge complained about

Code: Select all

!!! ERROR: Package swt-3.8 was not found!
So started working on adapting the ebuild that specific version of swt.

3). Again, removed eutils, so changed

Code: Select all

# inherit eutils java-pkg-2 java-ant-2 xdg-utils desktop
to:

Code: Select all

inherit java-pkg-2 xdg-utils desktop edos2unix
4). Some IUSE flags appear to be missing, so changed:

Code: Select all

IUSE="cairo opengl"
to:

Code: Select all

IUSE="cairo opengl elibc_FreeBSD x86-fbsd"
4). In the ebuild file there's a use of:

Code: Select all

QA_SONAME="usr/$(get_libdir)/libswt-.*.so"
The get_libdir function can't be used, it complains about being 'top level' IIR, so changed that line to:

Code: Select all

QA_SONAME="/usr/lib64/libswt-.*.so"
Making sure to update the digest, as we've edited the ebuild file, we get this error message:

Code: Select all

ebuild swt-3.8.2-r3.ebuild digest
Error(s) in metadata for 'dev-java/swt-3.8.2-r3':
  SRC_URI: USE flag 'x86-fbsd' referenced in conditional 'x86-fbsd?' is not in IUSE
Hmm. Not sure what to make of this error message, as x86-fbsd is included in the IUSE var.

So, tried to emerge =dev-java/swt-3.8.2-r3 anyway.

Code: Select all

x86_64-pc-linux-gnu-gcc -shared -fPIC  -o libswt-glx-gtk-3836.so swt.o glx.o glx_structs.o glx_stats.o -lGL -lGLU -lm
 * Building JNI libraries
 * Disabling all optional ANT_TASKS
Buildfile: build.xml does not exist!
Build failed
 * ERROR: dev-java/swt-3.8.2-r3::localrepo failed (compile phase):
Looking around, I believe that the build.xml file is something that should be included in the source files for the swt package.
It's here where I'm stuck, and am not sure what to do from here.
Top
sam_
Developer
Developer
User avatar
Posts: 2814
Joined: Fri Aug 14, 2020 12:33 am

  • Quote

Post by sam_ » Sun Sep 01, 2024 12:42 am

Unfortunately, that starts to stray into something Java-ecosystem-specific. You can try asking in #gentoo-java on IRC and see if anyone can help.

By the way, I'm sort of curious as to if you've used some ancient versions (far older than needed or something). For exmaple, swt-3.8.2-r4 in the 3.7 slot is still in tree. Why not use that? I thought Vuze got removed not that long ago, and FreeBSD support was removed far longer back.
Top
charles17
Advocate
Advocate
Posts: 3686
Joined: Sun Mar 02, 2008 3:20 pm

  • Quote

Post by charles17 » Sun Sep 01, 2024 6:10 am

eohrnberger wrote: Looking around, I believe that the build.xml file [...]
https://gitweb.gentoo.org/repo/gentoo.g ... 10baa5d67c
Top
eohrnberger
Apprentice
Apprentice
Posts: 250
Joined: Thu Dec 09, 2004 5:42 pm

  • Quote

Post by eohrnberger » Sun Sep 01, 2024 2:30 pm

sam_ wrote:Unfortunately, that starts to stray into something Java-ecosystem-specific. You can try asking in #gentoo-java on IRC and see if anyone can help.

By the way, I'm sort of curious as to if you've used some ancient versions (far older than needed or something). For exmaple, swt-3.8.2-r4 in the 3.7 slot is still in tree. Why not use that? I thought Vuze got removed not that long ago, and FreeBSD support was removed far longer back.
charles17 wrote:
eohrnberger wrote: Looking around, I believe that the build.xml file [...]
https://gitweb.gentoo.org/repo/gentoo.g ... 10baa5d67c
Hi guys. Hey, thanks for responding. Yes, it is Java-ecosystem specific, and, yes, swt-3.8.2-r3 doesn't build because of the error I posted, however, I checked further into the older gentoo system on which I do have vuze running, and it does have swt-3.8.2-r4 installed and running, and when I tried to build that version it worked just fine, didn't even have to change the ebuild file, so I'm going with that version.

Now that swt is built and installed, on to vuze. Got these error messages:

Code: Select all

>>> Compiling source in /var/tmp/portage/net-p2p/vuze-5.7.6.0/work/vuze-5.7.6.0 ...
 * Disabling all optional ANT_TASKS
!!! ERROR: Package json-simple was not found!
 * ERROR: net-p2p/vuze-5.7.6.0::localrepo failed (compile phase):
 *   java-config --classpath=swt-3.8,json-simple,log4j,commons-cli-1 failed
I'll have to dig into these a bit more, but I notice that:

Code: Select all

eix -s json-simple
[I] dev-java/json-simple
     Available versions:  (2.3) 2.3.1^t
       {doc source test}
     Installed versions:  2.3.1(2.3)^t(15:32:07 06/12/24)(-doc -source -test)
     Homepage:            https://www.json.org
     Description:         Java 7+ toolkit to quickly develop RFC 4627 JSON compatible applications
so it must be in how that package is detecting whether json-simple is installed or not. I'll report back my findings when I have collected them.

So a bump forward, and a new challenge to figure out. Progress. Slow and steady.
Top
charles17
Advocate
Advocate
Posts: 3686
Joined: Sun Mar 02, 2008 3:20 pm

  • Quote

Post by charles17 » Sun Sep 01, 2024 3:27 pm

eohrnberger wrote:

Code: Select all

[...]
 *   java-config --classpath=swt-3.8,json-simple,log4j,commons-cli-1 failed
It is looking for json-simple with SLOT=0
eohrnberger wrote:

Code: Select all

[...]
     Available versions:  (2.3) 2.3.1^t
(2.3) means SLOT="2.3", see https://gitweb.gentoo.org/repo/gentoo.g ... ebuild#n18

Checking the log might help: https://gitweb.gentoo.org/repo/gentoo.g ... son-simple

But, instead of wasting your time with a package where upstream is dead, don't you think it might be more useful to help improving net-p2p/biglybt with meaningful bug reports or even with pull requests? Maybe compare other distros' efforts to make it more linux compatible?
Top
eohrnberger
Apprentice
Apprentice
Posts: 250
Joined: Thu Dec 09, 2004 5:42 pm

  • Quote

Post by eohrnberger » Sun Sep 01, 2024 4:20 pm

charles17 wrote:
eohrnberger wrote:

Code: Select all

[...]
 *   java-config --classpath=swt-3.8,json-simple,log4j,commons-cli-1 failed
It is looking for json-simple with SLOT=0
eohrnberger wrote:

Code: Select all

[...]
     Available versions:  (2.3) 2.3.1^t
(2.3) means SLOT="2.3", see https://gitweb.gentoo.org/repo/gentoo.g ... ebuild#n18

Checking the log might help: https://gitweb.gentoo.org/repo/gentoo.g ... son-simple

But, instead of wasting your time with a package where upstream is dead, don't you think it might be more useful to help improving net-p2p/biglybt with meaningful bug reports or even with pull requests? Maybe compare other distros' efforts to make it more linux compatible?
It is true, that I haven't tried biglybt in a long time. I installed that and works as expected (don't think that was the case last time - glad to see things change!), this the shortest path to what's required.

Other than removing the localrepo which I've setup for this purpose, easy to clean up. :)
Top
eohrnberger
Apprentice
Apprentice
Posts: 250
Joined: Thu Dec 09, 2004 5:42 pm

  • Quote

Post by eohrnberger » Sun Sep 01, 2024 6:15 pm

Implementing a local repository to use removed pkg

So, in conclusion, yes, it can be done, but it's probably not easy, and request more knowledge about how portage and the gentoo build system works than I have.

Many thanks to those who lent assistance in this thread.
Top
charles17
Advocate
Advocate
Posts: 3686
Joined: Sun Mar 02, 2008 3:20 pm

  • Quote

Post by charles17 » Mon Sep 02, 2024 6:41 am

prepending [Solved] to the title?
Top
eohrnberger
Apprentice
Apprentice
Posts: 250
Joined: Thu Dec 09, 2004 5:42 pm

  • Quote

Post by eohrnberger » Tue Sep 03, 2024 10:28 pm

charles17 wrote:prepending [Solved] to the title?
Sure. But not so much a resolution as it would be a conclusion.
Top
Post Reply

21 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