View previous topic :: View next topic |
Author |
Message |
shoober420 Apprentice
Joined: 22 May 2017 Posts: 223
|
Posted: Fri Apr 30, 2021 4:48 am Post subject: [Solved] EGIT_REPO_URI= pull specific git branch |
|
|
I’m running into trouble with this particular ebuild, gtk+ (9999 version). I know the “gnome2” eclass will auto select the SRC_URI, so I removed that and added the direct gtk2 git branch link. Now it fails because it
keeps looking for the source files in the wrong directory. I even manually specified:
S="${WORKDIR}/${PN}-${PV}"
There is still something that is overriding and forcing this setting. How can I force the aforementioned source directory so emerge finds gtk and compiles?
Last edited by shoober420 on Fri Apr 30, 2021 10:42 pm; edited 4 times in total |
|
Back to top |
|
|
shoober420 Apprentice
Joined: 22 May 2017 Posts: 223
|
|
Back to top |
|
|
fedeliallalinea Administrator
Joined: 08 Mar 2003 Posts: 30996 Location: here
|
Posted: Fri Apr 30, 2021 5:35 am Post subject: |
|
|
What is the content of /var/tmp/portage/x11-libs/gtk+-2.9999/work/ directory? _________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
|
shoober420 Apprentice
Joined: 22 May 2017 Posts: 223
|
Posted: Fri Apr 30, 2021 5:58 am Post subject: |
|
|
it has all the source code in it |
|
Back to top |
|
|
fedeliallalinea Administrator
Joined: 08 Mar 2003 Posts: 30996 Location: here
|
Posted: Fri Apr 30, 2021 5:59 am Post subject: |
|
|
So you should overwrite S variable with S="${WORKDIR}" _________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54409 Location: 56N 3W
|
Posted: Fri Apr 30, 2021 10:06 am Post subject: |
|
|
Moved from Portage & Programming to Unsupported Software.
Live ebuilds are not supported. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
shoober420 Apprentice
Joined: 22 May 2017 Posts: 223
|
Posted: Fri Apr 30, 2021 1:58 pm Post subject: |
|
|
Whoops, so I’m recompiling my whole system against GCC11 since last night before bed and couldn’t double check the work directory mentioned. Unfortunately, since S= has no effect, i can’t change the build directory. There was is a option or eclass that’s overriding my desired directory. I know for a fact “gentoo2” eclass does this. I had to remove it from the glib-9999.ebuild I made. |
|
Back to top |
|
|
Hu Administrator
Joined: 06 Mar 2007 Posts: 21794
|
Posted: Fri Apr 30, 2021 3:26 pm Post subject: |
|
|
Please post the ebuild you are using so that we can review it. I do not see a gtk+-9999 in the main tree. |
|
Back to top |
|
|
shoober420 Apprentice
Joined: 22 May 2017 Posts: 223
|
Posted: Fri Apr 30, 2021 4:07 pm Post subject: |
|
|
So using S=${WORKDIR} did get the build to get further along, but I hit a big road block. I dont know enough about ebuilds to make a 9999 version for this one. Can someone help out? This is the most advanced one I've seen minus the kernel ebuilds.
Code: |
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
GNOME2_EAUTORECONF="yes"
inherit flag-o-matic multilib multilib-minimal
DESCRIPTION="Gimp ToolKit +"
HOMEPAGE="https://www.gtk.org/"
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/gtk/-/tree/gtk-2-24.git"
fi
LICENSE="LGPL-2+"
SLOT="2"
IUSE="aqua cups examples +introspection test vim-syntax xinerama"
REQUIRED_USE="
xinerama? ( !aqua )
"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
# Upstream wants us to do their job:
# https://bugzilla.gnome.org/show_bug.cgi?id=768663#c1
RESTRICT="test"
COMMON_DEPEND="
>=dev-libs/atk-2.10.0[introspection?,${MULTILIB_USEDEP}]
>=dev-libs/glib-2.34.3:2[${MULTILIB_USEDEP}]
>=media-libs/fontconfig-2.10.92[${MULTILIB_USEDEP}]
virtual/libintl[${MULTILIB_USEDEP}]
>=x11-libs/cairo-1.12.14-r4:=[aqua?,svg,${MULTILIB_USEDEP}]
>=x11-libs/gdk-pixbuf-2.30.7:2[introspection?,${MULTILIB_USEDEP}]
>=x11-libs/pango-1.36.3[introspection?,${MULTILIB_USEDEP}]
x11-misc/shared-mime-info
cups? ( >=net-print/cups-1.7.1-r2:=[${MULTILIB_USEDEP}] )
introspection? ( >=dev-libs/gobject-introspection-0.9.3:= )
!aqua? (
>=x11-libs/cairo-1.12.14-r4:=[aqua?,svg,X,${MULTILIB_USEDEP}]
>=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
>=x11-libs/libXcomposite-0.4.4-r1[${MULTILIB_USEDEP}]
>=x11-libs/libXcursor-1.1.14[${MULTILIB_USEDEP}]
>=x11-libs/libXdamage-1.1.4-r1[${MULTILIB_USEDEP}]
>=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
>=x11-libs/libXfixes-5.0.1[${MULTILIB_USEDEP}]
>=x11-libs/libXi-1.7.2[${MULTILIB_USEDEP}]
>=x11-libs/libXrandr-1.5[${MULTILIB_USEDEP}]
>=x11-libs/libXrender-0.9.8[${MULTILIB_USEDEP}]
xinerama? ( >=x11-libs/libXinerama-1.1.3[${MULTILIB_USEDEP}] )
)
"
DEPEND="${COMMON_DEPEND}
!aqua? ( x11-base/xorg-proto )
test? (
media-fonts/font-cursor-misc
media-fonts/font-misc-misc
x11-themes/hicolor-icon-theme
)
"
# gtk+-2.24.8 breaks Alt key handling in <=x11-libs/vte-0.28.2:0
# Add blocker against old gtk-builder-convert to be sure we maintain both
# in sync.
RDEPEND="${COMMON_DEPEND}
>=dev-util/gtk-update-icon-cache-2
>=x11-themes/adwaita-icon-theme-3.14
x11-themes/gnome-themes-standard
!<dev-util/gtk-builder-convert-${PV}
"
# librsvg for svg icons (PDEPEND to avoid circular dep), bug #547710
PDEPEND="
gnome-base/librsvg[${MULTILIB_USEDEP}]
x11-themes/gtk-engines-adwaita
vim-syntax? ( app-vim/gtk-syntax )
"
# docbook-4.1.2 and xsl required for man pages
# docbook-4.3 required for gtk-doc
BDEPEND="
app-text/docbook-xml-dtd:4.1.2
app-text/docbook-xml-dtd:4.3
app-text/docbook-xsl-stylesheets
dev-libs/gobject-introspection-common
dev-libs/libxslt
dev-util/glib-utils
>=dev-util/gtk-doc-am-1.20
>=sys-devel/gettext-0.18.3
virtual/pkgconfig
examples? ( x11-libs/gdk-pixbuf )
"
DISABLE_AUTOFORMATTING="yes"
DOC_CONTENTS="To make the gtk2 file chooser use 'current directory' mode by default,
edit ~/.config/gtk-2.0/gtkfilechooser.ini to contain the following:
[Filechooser Settings]
StartupMode=cwd"
MULTILIB_CHOST_TOOLS=(
/usr/bin/gtk-query-immodules-2.0$(get_exeext)
)
S="${WORKDIR}"
strip_builddir() {
local rule=$1
shift
local directory=$1
shift
sed -e "s/^\(${rule} =.*\)${directory}\(.*\)$/\1\2/" -i $@ \
|| die "Could not strip director ${directory} from build."
}
set_gtk2_confdir() {
# An arch specific config directory is used on multilib systems
GTK2_CONFDIR="/etc/gtk-2.0/${CHOST}"
}
src_prepare() {
default
}
multilib_src_configure() {
ECONF_SOURCE=${S} \
multilib_src_configure \
$(usex aqua --with-gdktarget=quartz --with-gdktarget=x11) \
$(usex aqua "" --with-xinput) \
$(use_enable cups cups auto) \
$(multilib_native_use_enable introspection) \
$(use_enable xinerama) \
--disable-papi \
--enable-man \
--with-xml-catalog="${EPREFIX}"/etc/xml/catalog \
CUPS_CONFIG="${EPREFIX}/usr/bin/${CHOST}-cups-config"
}
multilib_src_test() {
virtx emake check
}
multilib_src_install() {
default
}
multilib_src_install_all() {
# see bug #133241
# Also set more default variables in sync with gtk3 and other distributions
insinto /usr/share/gtk-2.0
newins - gtkrc <<- 'EOF'
gtk-fallback-icon-theme = "gnome"
gtk-theme-name = "Adwaita"
gtk-icon-theme-name = "Adwaita"
gtk-cursor-theme-name = "Adwaita"
EOF
# dev-util/gtk-builder-convert split off into a separate package, #402905
rm "${ED}"/usr/bin/gtk-builder-convert || die
rm "${ED}"/usr/share/man/man1/gtk-builder-convert.* || die
}
pkg_preinst() {
# gnome2_pkg_preinst
multilib_pkg_preinst() {
# Make immodules.cache belongs to gtk+ alone
local cache="/usr/$(get_libdir)/gtk-2.0/2.10.0/immodules.cache"
if [[ -e "${EROOT}${cache}" ]]; then
cp "${EROOT}${cache}" "${ED}${cache}" || die
else
touch "${ED}${cache}" || die
fi
}
multilib_parallel_foreach_abi multilib_pkg_preinst
}
pkg_postinst() {
# gnome2_pkg_postinst
multilib_pkg_postinst() {
gnome2_query_immodules_gtk2 \
|| die "Update immodules cache failed (for ${ABI})"
}
multilib_parallel_foreach_abi multilib_pkg_postinst
set_gtk2_confdir
if [ -e "${EROOT}/etc/gtk-2.0/gtk.immodules" ]; then
elog "File /etc/gtk-2.0/gtk.immodules has been moved to \$CHOST"
elog "aware location. Removing deprecated file."
rm -f "${EROOT}/etc/gtk-2.0/gtk.immodules"
fi
if [ -e "${EROOT}${GTK2_CONFDIR}/gtk.immodules" ]; then
elog "File /etc/gtk-2.0/gtk.immodules has been moved to"
elog "${EROOT}/usr/$(get_libdir)/gtk-2.0/2.10.0/immodules.cache"
elog "Removing deprecated file."
rm -f "${EROOT}${GTK2_CONFDIR}/gtk.immodules"
fi
# pixbufs are now handled by x11-libs/gdk-pixbuf
if [ -e "${EROOT}${GTK2_CONFDIR}/gdk-pixbuf.loaders" ]; then
elog "File ${EROOT}${GTK2_CONFDIR}/gdk-pixbuf.loaders is now handled by x11-libs/gdk-pixbuf"
elog "Removing deprecated file."
rm -f "${EROOT}${GTK2_CONFDIR}/gdk-pixbuf.loaders"
fi
# two checks needed since we dropped multilib conditional
if [ -e "${EROOT}/etc/gtk-2.0/gdk-pixbuf.loaders" ]; then
elog "File ${EROOT}/etc/gtk-2.0/gdk-pixbuf.loaders is now handled by x11-libs/gdk-pixbuf"
elog "Removing deprecated file."
rm -f "${EROOT}/etc/gtk-2.0/gdk-pixbuf.loaders"
fi
if [ -e "${EROOT}"/usr/lib/gtk-2.0/2.[^1]* ]; then
elog "You need to rebuild ebuilds that installed into" "${EROOT}"/usr/lib/gtk-2.0/2.[^1]*
elog "to do that you can use qfile from portage-utils:"
elog "emerge -va1 \$(qfile -qC ${EPREFIX}/usr/lib/gtk-2.0/2.[^1]*)"
fi
if ! has_version "app-text/evince"; then
elog "Please install app-text/evince for print preview functionality."
elog "Alternatively, check \"gtk-print-preview-command\" documentation and"
elog "add it to your gtkrc."
fi
readme.gentoo_print_elog
}
pkg_postrm() {
# gnome2_pkg_postrm
if [[ -z ${REPLACED_BY_VERSION} ]]; then
multilib_pkg_postrm() {
rm -f "${EROOT}/usr/$(get_libdir)/gtk-2.0/2.10.0/immodules.cache"
}
multilib_foreach_abi multilib_pkg_postrm
fi
}
|
|
|
Back to top |
|
|
Hu Administrator
Joined: 06 Mar 2007 Posts: 21794
|
Posted: Fri Apr 30, 2021 4:47 pm Post subject: |
|
|
shoober420 wrote: | I hit a big road block. I dont know enough about ebuilds to make a 9999 version for this one. Can someone help out? | What is the roadblock? You did not post any errors, nor describe any problems. Does the ebuild you posted run to completion? If not, how does it fail? If it does, then what is wrong that you think you need to change anything? |
|
Back to top |
|
|
shoober420 Apprentice
Joined: 22 May 2017 Posts: 223
|
Posted: Fri Apr 30, 2021 5:15 pm Post subject: |
|
|
So heres the log. It stalls and I have to force quit it with Ctrl+C.
Code: |
@gentoo:~$ doas emerge -av --autounmask "=x11-libs/gtk+-2.9999"
doas (lokiju420_-@gentoo) password:
* IMPORTANT: 8 news items need reading for repository 'gentoo'.
* Use eselect news read to view new items.
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild U ] x11-libs/gtk+-2.9999:2::localrepo [2.24.32-r1:2::gentoo] USE="introspection (-aqua) -cups -examples -test -vim-syntax -xinerama" ABI_X86="32 (64) (-x32)" 0 KiB
Total: 1 package (1 upgrade), Size of downloads: 0 KiB
Would you like to merge these packages? [Yes/No] yes
>>> Verifying ebuild manifests
>>> Emerging (1 of 1) x11-libs/gtk+-2.9999::localrepo
>>> Unpacking source...
>>> Source unpacked in /var/tmp/portage/x11-libs/gtk+-2.9999/work
>>> Preparing source in /var/tmp/portage/x11-libs/gtk+-2.9999/work ...
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/x11-libs/gtk+-2.9999/work ...
* abi_x86_32.x86: running multilib-minimal_abi_src_configure
|
I've also added "autotools" and "eautoreconf" to the ebuild that it says "aclocal not found". |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54409 Location: 56N 3W
|
Posted: Fri Apr 30, 2021 5:35 pm Post subject: |
|
|
shoober420,
Don't use doas or sudo. Really be root. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
shoober420 Apprentice
Joined: 22 May 2017 Posts: 223
|
|
Back to top |
|
|
Hu Administrator
Joined: 06 Mar 2007 Posts: 21794
|
|
Back to top |
|
|
Anon-E-moose Watchman
Joined: 23 May 2008 Posts: 6103 Location: Dallas area
|
|
Back to top |
|
|
shoober420 Apprentice
Joined: 22 May 2017 Posts: 223
|
Posted: Fri Apr 30, 2021 7:19 pm Post subject: |
|
|
I knew that URL link would most likely not work, but I was trying everything. Here is the URL for the gtk2-minimal-git package I maintain on the Arch AUR.
https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=gtk2-minimal-git
On line 22, that link would download the git sources, but it doesnt appear to work on Gentoo ebuilds.
I'm sorry, what I meant to say was "EGIT_REPO_URI=". How can I pull sources from a specific git branch using "EGIT_REPO_URI="?
I need to do this for gtk+-3.9999.ebuild as well so I need the EGIT_REPO_URI= method. |
|
Back to top |
|
|
asturm Developer
Joined: 05 Apr 2007 Posts: 8942
|
|
Back to top |
|
|
shoober420 Apprentice
Joined: 22 May 2017 Posts: 223
|
Posted: Fri Apr 30, 2021 10:42 pm Post subject: |
|
|
Thank you very much, EGIT_BRANCH was what I was looking for. |
|
Back to top |
|
|
|