Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Where custom ebuilds stores git source files?
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
orion777
Apprentice
Apprentice


Joined: 15 Mar 2017
Posts: 207
Location: Riga, Latvia

PostPosted: Mon Sep 03, 2018 5:24 pm    Post subject: Where custom ebuilds stores git source files? Reply with quote

I have a custom ebuild https://forums.gentoo.org/viewtopic-t-1080522.html?sid=ae1bd9016062c908d52fe074d2663166. It uses git to download sources and python 2.7 to compile them. Now I wish to delete this package and its sources to force emerge to take new version from the github repository. (version on the github was not changed, but some minor modifications has been done there and I need these modifications in my installation)
Back to top
View user's profile Send private message
fedeliallalinea
Administrator
Administrator


Joined: 08 Mar 2003
Posts: 30917
Location: here

PostPosted: Mon Sep 03, 2018 5:30 pm    Post subject: Reply with quote

In /usr/portage/distfiles/git3-src/<repository>_<package-name>.git
_________________
Questions are guaranteed in life; Answers aren't.
Back to top
View user's profile Send private message
orion777
Apprentice
Apprentice


Joined: 15 Mar 2017
Posts: 207
Location: Riga, Latvia

PostPosted: Mon Sep 03, 2018 5:52 pm    Post subject: Reply with quote

fedeliallalinea wrote:
In /usr/portage/distfiles/git3-src/<repository>_<package-name>.git

Yep, I was deleting this directory prior to post this message. Now this directory is empty, but the emerge is still able to install the custom overlay ros-meta/mavroxy. During this process the network interface remains in idle, /usr/portage/distfiles/git3-src/ remains empty, but emerge finishes installation correctly :roll: That why I post this question here :?
P.S. to reinstall the mavproxy I was delete it by emerge -cav mavproxy, then clean the /usr/portage/distfiles/git3-src/ and then reinstall as described above.
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21635

PostPosted: Tue Sep 04, 2018 2:06 am    Post subject: Reply with quote

I think you are trying to solve the wrong problem. Deleting the local sources is not the right solution. If the upstream project has not changed, then redownloading will do nothing. If upstream has changed, then you want to sync to the commit with those changes. You say both that the version on github was not changed and that some modifications are present, but these are contradictory. If upstream has modified the code, then the version available from github has changed. Do you mean that upstream has committed fixes, but not tagged a release? If so, then you need to pull the latest commit. The git eclass should handle this automatically if your ebuild does not pin to a specific commit. Please show the full output of a clean install of your live ebuild. If the ebuild in the linked thread no longer represents the ebuild you are using, then please post your current version.
Back to top
View user's profile Send private message
orion777
Apprentice
Apprentice


Joined: 15 Mar 2017
Posts: 207
Location: Riga, Latvia

PostPosted: Wed Sep 05, 2018 6:00 pm    Post subject: Reply with quote

The github page is here https://github.com/ArduPilot/MAVProxy and it is possibe to find that the folder of MAVProxy has been last edited 5 of September. I hope (but note sure) that these modifications contains problem, that was (probably) resolved https://discuss.ardupilot.org/t/mavproxy-master-to-wait-for-incoming-connections/32533/2

I was deleted files from my previous installation from /usr/portage/distfiles/git3-src/ , so now I can't compare them. However, emerge is still able to install the MAVProxy whereas /usr/portage/distfiles/git3-src/ remains empty, so somewhere these sources are still available in my system
Code:
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=6

PYTHON_COMPAT=( python2_7 )
inherit distutils-r1 git-r3

DESCRIPTION="A UAV ground station software package for MAVLink based systems"
HOMEPAGE="http://ardupilot.github.io/MAVProxy"
EGIT_REPO_URI="https://github.com/ArduPilot/MAVProxy.git"

LICENSE="GPL-3+"
SLOT="0"
# KEYWORDS="~amd64 ~x86"

REQUIRED_USE="${PYTHON_REQUIRED_USE}"

RDEPEND="${PYTHON_DEPS}
    media-libs/opencv[${PYTHON_USEDEP}]
    dev-python/wxpython:2.8[${PYTHON_USEDEP}]
    dev-python/matplotlib[${PYTHON_USEDEP}]
    dev-python/numpy[${PYTHON_USEDEP}]
    dev-python/pyserial[${PYTHON_USEDEP}]
    dev-python/pillow[${PYTHON_USEDEP}]
"

DEPEND="${RDEPEND}
    virtual/pkgconfig"


Quote:
Please show the full output of a clean install of your live ebuild

How to do this?
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21635

PostPosted: Thu Sep 06, 2018 1:09 am    Post subject: Reply with quote

Unless inhibited, a live ebuild should automatically sync to the latest changes in the target branch before it begins to build. That ebuild does not appear to inhibit the update check.

app-text/wgetpaste is a popular way of uploading full build logs. Please use emerge to install your live ebuild, then pastebin the resulting build log.
Back to top
View user's profile Send private message
orion777
Apprentice
Apprentice


Joined: 15 Mar 2017
Posts: 207
Location: Riga, Latvia

PostPosted: Fri Sep 07, 2018 6:57 am    Post subject: Reply with quote

Good day!
Hu wrote:
Unless inhibited, a live ebuild should automatically sync to the latest changes in the target branch before it begins to build. That ebuild does not appear to inhibit the update check.

This ebuild has been prepared by fedeliallalinea in this topic https://forums.gentoo.org/viewtopic-t-1080522.html?sid=ae1bd9016062c908d52fe074d2663166 Maybe You can suggest how to force it to make latest changes synk?

Quote:
Please use emerge to install your live ebuild, then pastebin the resulting build log.


1) mavproxy has been deleted by emerge -cav mavproxy
2) These strings has been added into the /etc/portage/make.conf
Code:
PORTAGE_ELOG_CLASSES="info warn error log qa"
PORTAGE_ELOG_SYSTEM="save"
PORT_LOGDIR="/var/log/portage"

3) emerging custom ebuild: emerge -av ros-meta/mavroxy
4) here is the output of the /var/log/portage/ros-meta:mavproxy-9999:20180907-064251.log
https://paste.pound-python.org/show/8BaPQPAjAPRjGsfdwP6H/
Wrom that log file I can't understand where the sources are stored in :?: So I still can't delete them to force ebuild to catch new sources from the github.
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21635

PostPosted: Sat Sep 08, 2018 1:01 am    Post subject: Reply with quote

As I said, that ebuild looks like it will sync on every run. The log you showed is produced by Portage, but looks to me like it is not a build log. I think you are reinstalling a previously built binary package. If you want the new code, you must actually build the package, not just reinstall an archive of the older version. What is the output of emerge --pretend --verbose mavproxy ; emerge --info?
Back to top
View user's profile Send private message
orion777
Apprentice
Apprentice


Joined: 15 Mar 2017
Posts: 207
Location: Riga, Latvia

PostPosted: Sat Sep 08, 2018 7:55 am    Post subject: Reply with quote

I use Sakaki's Raspberry PI3B (rpi3) 64 bit image https://forums.gentoo.org/viewtopic-p-8257016.html#8257016 This image, to save compile time on the embedded rpi3 system check for the prepared binary first https://github.com/sakaki-/gentoo-on-rpi3-64bit#have-your-gentoo-pc-do-the-heavy-lifting But due to I'm using custom ebuild of the mavproxy, there is no prepared binary for the mavproxy on the binhost remote server, so I was not mentioned about this
Quote:
If you want the new code, you must actually build the package, not just reinstall an archive of the older version.

Yes, that is actually what I want, but I don't know how to do this.

This custom ebuild has been prepared in such way:
Code:
emerge app-portage/repoman
mkdir -p /usr/local/portage/localrepo/{metadata,profiles}
chown -R portage:portage /usr/local/portage/localrepo
echo 'localrepo' > /usr/local/portage/localrepo/profiles/repo_name
next, fill the file /usr/local/portage/localrepo/metadata/layout.conf by
masters = gentoo
auto-sync = false

next, fill the file /etc/portage/repos.conf/localrepo.conf by
[localrepo]
location = /usr/local/portage/localrepo

mkdir -p /usr/local/portage/localrepo/ros-meta/mavproxy
cp ~root/mavproxy-9999.ebuild /usr/local/portage/localrepo/ros-meta/mavproxy/mavproxy-9999.ebuild
chown -R portage:portage /usr/local/portage/localrepo
repoman manifest
popd


Here is the content of the make.conf
Code:
pi64 ~ # cat /etc/portage/make.conf
# Simple make.conf for 64-bit Raspberry Pi 3

# NB most settings now taken from the default/linux/arm64/13.0/desktop/rpi3
# profile
# See /usr/local/portage/rpi3/profiles/targets/rpi3/<...>
# You can override as desired in this file (/etc/portage/make.conf)
# (and via the other /etc/portage/<...> subdirectory entries)

# Some scripts looks for PORTDIR in make.conf explicitly
PORTDIR="/usr/portage"

# for use when compiling locally
MAKEOPTS="-j5 -l4"
EMERGE_DEFAULT_OPTS="--jobs=5 --load-average=4"
# for use with compiling with distcc only
#MAKEOPTS="-j8 -l4"
#EMERGE_DEFAULT_OPTS="--jobs=5 --load-average=4"

# per https://wiki.gentoo.org/wiki/Raspberry_Pi_VC4
VIDEO_CARDS="fbdev vc4"
INPUT_DEVICES="evdev synaptics"

# use (and verify) signed package snapshots
#FEATURES="${FEATURES} webrsync-gpg"
#PORTAGE_GPG_DIR="/etc/portage/gpg"

# uncomment to build binary packages as a byproduct of each emerge
# (these are useful backups) in /usr/portage/packages
FEATURES="${FEATURES} buildpkg"

# uncomment to disribute emerges, where possible, using distcc
#FEATURES="${FEATURES} distcc distcc-pump"

# uncomment to use binary packages from PORTAGE_BINHOST, where available,
# (and build normally, where not)
FEATURES="${FEATURES} getbinpkg"
PORTAGE_BINHOST="https://isshoni.org/pi64pie"

GENTOO_MIRRORS="http://gentoo.osuosl.org/ http://trumpetti.atm.tut.fi/gentoo/"

PORTAGE_ELOG_CLASSES="info warn error log qa"
PORTAGE_ELOG_SYSTEM="save"
PORT_LOGDIR="/var/log/portage"


Quote:
What is the output of emerge --pretend --verbose mavproxy ; emerge --info?

The mavproxy is already installed, so
Code:
pi64 ~ # emerge --pretend --verbose mavproxy

Local copy of remote index is up-to-date and will be used.

These are the packages that would be merged, in order:

Calculating dependencies... done!
[binary   R   *] ros-meta/mavproxy-9999::localrepo  PYTHON_TARGETS="python2_7" 0 KiB

Total: 1 package (1 reinstall, 1 binary), Size of downloads: 0 KiB

 * IMPORTANT: 1 news items need reading for repository 'rpi3'.
 * IMPORTANT: 2 news items need reading for repository 'gentoo'.
 * Use eselect news read to view new items.

pi64 ~ # emerge --info
Portage 2.3.48 (python 3.6.6-final-0, default/linux/arm64/17.0/desktop, gcc-7.3.0, glibc-2.27-r5, 4.14.59-v8+ aarch64)
=================================================================
System uname: Linux-4.14.59-v8+-aarch64-with-gentoo-2.6
KiB Mem:      991364 total,    555304 free
KiB Swap:     524284 total,    524028 free
Timestamp of repository gentoo: Thu, 30 Aug 2018 00:45:01 +0000
Head commit of repository gentoo: 79b3c537aa2945a8cd29334f5a07fd1dfe508833
Head commit of repository sakaki-tools: 114213aa26b56e74c46d2fd6a4601e1593a73ed2

Head commit of repository rpi3: 99992fb3094d6f4834fdb47168a407dc89f8d611

sh bash 4.4_p23
ld GNU ld (Gentoo 2.30 p3) 2.30.0
distcc 3.2rc1 aarch64-unknown-linux-gnu [disabled]
app-shells/bash:          4.4_p23::gentoo
dev-java/java-config:     2.2.0-r4::gentoo
dev-lang/perl:            5.26.2::gentoo
dev-lang/python:          2.7.15::gentoo, 3.5.5-r1::gentoo, 3.6.6::gentoo
dev-util/cmake:           3.11.4::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.6::gentoo
sys-apps/openrc:          0.38.1::gentoo
sys-apps/sandbox:         2.13::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69-r4::gentoo
sys-devel/automake:       1.16.1-r1::gentoo
sys-devel/binutils:       2.30-r3::gentoo
sys-devel/gcc:            7.3.0-r3::gentoo
sys-devel/gcc-config:     1.9.1::gentoo
sys-devel/libtool:        2.4.6-r5::gentoo
sys-devel/make:           4.2.1-r3::gentoo
sys-kernel/linux-headers: 4.17::gentoo (virtual/os-headers)
sys-libs/glibc:           2.27-r5::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://isshoni.org/gentoo-portage-pi64
    priority: -1000
    sync-rsync-extra-opts:
    sync-rsync-verify-jobs: 1
    sync-rsync-verify-metamanifest: no
    sync-rsync-verify-max-age: 24

localrepo
    location: /usr/local/portage/localrepo
    masters: gentoo

sakaki-tools
    location: /usr/local/portage/sakaki-tools
    sync-type: git
    sync-uri: https://github.com/sakaki-/sakaki-tools.git
    masters: gentoo
    priority: 50

rpi3
    location: /usr/local/portage/rpi3
    sync-type: git
    sync-uri: https://github.com/sakaki-/rpi3-overlay.git
    masters: gentoo
    priority: 100

ACCEPT_KEYWORDS="arm64 ~arm64"
ACCEPT_LICENSE="@FREE CC-Sampling-Plus-1.0"
CBUILD="aarch64-unknown-linux-gnu"
CFLAGS="-march=armv8-a+crc -mtune=cortex-a53 -O2 -pipe"
CHOST="aarch64-unknown-linux-gnu"
CONFIG_PROTECT="/boot/cmdline.txt /boot/config.txt /etc /usr/lib64/libreoffice/program/sofficerc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=armv8-a+crc -mtune=cortex-a53 -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--jobs=5 --load-average=4"
ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2"
FEATURES="assume-digests binpkg-logs buildpkg config-protect-if-modified distlocks ebuild-locks fixlafiles getbinpkg merge-sync multilib-strict news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2"
GENTOO_MIRRORS="http://gentoo.osuosl.org/ http://trumpetti.atm.tut.fi/gentoo/"
LANG="en_GB.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j5 -l4"
PKGDIR="/usr/portage/packages"
PORTAGE_BINHOST="https://isshoni.org/pi64pie"
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"
PORTAGE_TMPDIR="/var/tmp"
USE="X a52 aac acl acpi alsa arm64 berkdb bindist bluetooth branding bzip2 cairo cdda cdr cli consolekit crypt cups cxx dbus dri dts dvdr egl emboss encode exif fam ffmpeg flac fortran gdbm gif glamor gles1 gles2 gpm gtk iconv ipv6 jpeg lcms ldap libnotify libtirpc lock mad mng modules mp3 mp4 mpeg multilib ncurses nls nptl ogg opengl openmp pam pango pcre pdf png policykit ppds qt4 qt5 readline seccomp spell ssl startup-notification svg tcpd thunar tiff truetype udev udisks unicode upower usb vorbis wxwidgets x264 xattr xcb xml xv xvid zlib" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon plan sheets stage words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_ARM="edsp neon thumb thumb2 v4 v5 v6 v7 v8 vfp vfp-d32 vfpv3 vfpv4" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev synaptics" KERNEL="linux" L10N="en" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6 php7-0" POSTGRES_TARGETS="postgres9_5 postgres10" PYTHON_SINGLE_TARGET="python3_6" PYTHON_TARGETS="python2_7 python3_5 python3_6" QEMU_SOFTMMU_TARGETS="aarch64 arm i386 x86_64" QEMU_USER_TARGETS="aarch64" RUBY_TARGETS="ruby21 ruby23" USERLAND="GNU" VIDEO_CARDS="fbdev vc4" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

pi64 ~ #
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21635

PostPosted: Sat Sep 08, 2018 4:16 pm    Post subject: Reply with quote

orion777 wrote:
But due to I'm using custom ebuild of the mavproxy, there is no prepared binary for the mavproxy on the binhost remote server, so I was not mentioned about this
It is not on the binhost server. It is stored locally, as shown your output below.
orion777 wrote:
Hu wrote:
If you want the new code, you must actually build the package, not just reinstall an archive of the older version.
Yes, that is actually what I want, but I don't know how to do this.
Everything you wrote to date sounded like your problem was that you could not sync to the latest code, so that each run of emerge would recompile the old code. You may even have thought that was your problem. It was not, and has not been. Your problem all along has been that you are not even recompiling the code you already downloaded. You are just repeatedly reinstalling the prebuilt tbz2 you built the very first time you installed this package.
orion777 wrote:
Hu wrote:
What is the output of emerge --pretend --verbose mavproxy ; emerge --info?
The mavproxy is already installed, so
Code:
pi64 ~ # emerge --pretend --verbose mavproxy

Local copy of remote index is up-to-date and will be used.

These are the packages that would be merged, in order:

Calculating dependencies... done!
[binary   R   *] ros-meta/mavproxy-9999::localrepo  PYTHON_TARGETS="python2_7" 0 KiB
This confirms the problem. You are reinstalling a prebuilt tbz2, not recompiling. That is why it does not matter what source you have downloaded, because you are not using the source at all.
orion777 wrote:
Here is the content of the make.conf
Code:
pi64 ~ # cat /etc/portage/make.conf
FEATURES="${FEATURES} buildpkg"
FEATURES="${FEATURES} getbinpkg"

This is probably the source of your problem. According to man emerge, option --getbinpkg implies --usepkg. man make.conf does not directly say that FEATURES=getbinpkg implies --getbinpkg, but it seems reasonable to expect that to be the case. If so, then you have indirectly enabled --usepkg, so locally stored matching tbz2 will be preferred over rebuilding. Since you have FEATURES=buildpkg, you created and stored a tbz2 when you first built mavproxy locally. If so, the immediate solution to all this is to delete the locally stored tbz2 of mavproxy. The longer term solution is not to use FEATURES="getbinpkg" when you need to recompile a package.
Back to top
View user's profile Send private message
orion777
Apprentice
Apprentice


Joined: 15 Mar 2017
Posts: 207
Location: Riga, Latvia

PostPosted: Sun Sep 09, 2018 8:25 am    Post subject: Reply with quote

So, finally:
the command emerge -cav ros-meta/mavproxy deletes /usr/portage/packages/ros-meta/mavproxy-9999.tbz2 as well both /usr/lib64/python2.7/site-packages/MAVProxy/ and /usr/lib64/python2.7/site-packages/MAVProxy-1.6.4-py2.7.egg-info/ . Further, MC is unable to find anything with the mavproxy* (with NO case sensitive option). However, during further installation emerge still uses binary, instead of sources [binary R *] , the internet connection remains in idle and /usr/portage/distfiles/git3-src/ remains empty (its content has been deleted to perform the experiment).

Now, if to comment strings FEATURES="${FEATURES} buildpkg" and FEATURES="${FEATURES} getbinpkg" in the make.conf, then during the installation it has been activating the internet access, git-3-src now contains sources and emerge looks like [ebuild instead of binary].

So Yes, the problem is solved! However, I still unable to understand where these binary are stored in if above mentioned options in the make.conf are not commented.
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21635

PostPosted: Sun Sep 09, 2018 3:47 pm    Post subject: Reply with quote

emerge -c should not delete the prebuilt tbz2. You must delete that by hand or through a supporting tool, such as eclean.
Back to top
View user's profile Send private message
orion777
Apprentice
Apprentice


Joined: 15 Mar 2017
Posts: 207
Location: Riga, Latvia

PostPosted: Fri Sep 14, 2018 6:30 am    Post subject: Reply with quote

Good morning. How to use sources in the git folder?
The custom ebuild was downloaded sources from the github.
Now I have to manually fix this code issue https://github.com/ArduPilot/MAVProxy/pull/544/commits/71dab4fb4f2c382ac97a0a4ff2172c4023fcfc8a
However, I can't find original structure of the github sources https://github.com/ArduPilot/MAVProxy
Code:
    MAVProxy    docs   windows    .gitignore    .gitmodules    COPYING.txt    README.md    requirements.txt    setup.py    

in the local git repository /usr/portage/distfiles/git3-src/ArduPilot_MAVProxy.git
Code:
pi64 /usr/portage/distfiles/git3-src/ArduPilot_MAVProxy.git # ls
FETCH_HEAD  HEAD  config  description  hooks  info  objects  refs

So, how to deal with it? How to manually apply changes to the local git files and leave emerge possibility to install it?
Thank you.
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21635

PostPosted: Sat Sep 15, 2018 1:12 am    Post subject: Reply with quote

Use a local user patch, as you would for any other package which needs a post-release fix.
Back to top
View user's profile Send private message
orion777
Apprentice
Apprentice


Joined: 15 Mar 2017
Posts: 207
Location: Riga, Latvia

PostPosted: Thu Sep 20, 2018 8:26 am    Post subject: Reply with quote

As I understood, I have to make local patch and emerge will apply it every time when i will emerge the mavproxy.
1) So, there are no other possibilities to apply commits https://github.com/ArduPilot/MAVProxy/pull/544/commits/71dab4fb4f2c382ac97a0a4ff2172c4023fcfc8a or manual changes instead of making local patch, right?
2) As was mentioned, the developers makes some minor modifications without changing version of the mavproxy. This means that when additional changes in the mavproxy.py will be made by someone, then my patch starts to fail during reinstall, right?
Thank You.
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21635

PostPosted: Fri Sep 21, 2018 2:12 am    Post subject: Reply with quote

Local patches are the standard solution if you want to include a change that is not part of the upstream sources you are building. If upstream has already fixed the issue, and done so in the branch you intend to build, you can sync to their change and not use a local patch.

Yes, if they write a conflicting change, your patch will break. This is always a risk when patching a live ebuild.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum