Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Unexpected EOF error on unmerging
View unanswered posts
View posts from last 24 hours

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
j3rm
Tux's lil' helper
Tux's lil' helper


Joined: 19 Jun 2002
Posts: 148
Location: Tennessee

PostPosted: Mon Jun 14, 2004 12:42 pm    Post subject: Unexpected EOF error on unmerging Reply with quote

Mod Edit: Made sticky and changed title from "can't unmerge mailx-8.1.2.20021129-r2" - tomk
Mod Edit: unstuck - pilla

I was upgrading my system last night, and emerge quit while it was trying to unmerge this version of mailx because 8.1.2.20021129-r3 had just been installed in its place. Here's the error I'm getting:

Quote:
>>> Unmerging mail-client/mailx-8.1.2.20021129-r2...
No package files given... Grabbing a set.
/usr/sbin/ebuild.sh: /var/db/pkg/mail-client/mailx-8.1.2.20021129-r2/mailx-8.1.2.20021129-r2.ebuild: line 43: unexpected EOF while looking for matching `"'
/usr/sbin/ebuild.sh: /var/db/pkg/mail-client/mailx-8.1.2.20021129-r2/mailx-8.1.2.20021129-r2.ebuild: line 70: syntax error: unexpected end of file

!!! ERROR: mail-client/mailx-8.1.2.20021129-r2 failed.
!!! Function , Line 1297, Exitcode 1
!!! error sourcing ebuild

!!! FAILED prerm: 1


I tried redownloading the ebuild file to no avail. I opened the file with vim and found nothing suspicious. How can I get rid of this phantom EOF? Thanks in advance.
_________________
"We can't run from who we are, our destiny chooses us."
-- Professor Petrovsky ("Rounders")


Last edited by j3rm on Sat Jul 31, 2004 6:35 pm; edited 1 time in total
Back to top
View user's profile Send private message
tobechar
n00b
n00b


Joined: 30 Oct 2003
Posts: 61
Location: Canada

PostPosted: Mon Jun 14, 2004 1:57 pm    Post subject: Reply with quote

There is an error in the ebuild.

/var/db/pkg/mail-client/mailx-8.1.2.20021129-r2/mailx-8.1.2.20021129-r2.ebuild

You will need to go to line 19.

Code:
DEPEND=">=net-libs/liblockfile-1.03
        virtual/mta
    !net-mail/mailutils
    mail-client/mailx-support^A


You simply need to remove the ^A from the end of line 19 and replace with a double-quote.

Code:
DEPEND=">=net-libs/liblockfile-1.03
        virtual/mta
    !net-mail/mailutils
    mail-client/mailx-support"   #  Quote Added.

_________________
Computin' Since '89
Back to top
View user's profile Send private message
j3rm
Tux's lil' helper
Tux's lil' helper


Joined: 19 Jun 2002
Posts: 148
Location: Tennessee

PostPosted: Mon Jun 14, 2004 2:10 pm    Post subject: Reply with quote

Ah, thank you. :)
_________________
"We can't run from who we are, our destiny chooses us."
-- Professor Petrovsky ("Rounders")
Back to top
View user's profile Send private message
hughesjr
n00b
n00b


Joined: 10 Aug 2003
Posts: 51

PostPosted: Sat Jun 26, 2004 5:18 pm    Post subject: Reply with quote

it's been 2 weeks ... is someone going to fix this problem, or do we have to continue to search for it in the forums?
Back to top
View user's profile Send private message
wsmc884
n00b
n00b


Joined: 19 Nov 2003
Posts: 29

PostPosted: Sun Jun 27, 2004 4:59 pm    Post subject: Reply with quote

I still get this:

>>> Auto-cleaning packages ...

mail-client/mailx
selected: 8.1.2.20021129-r2
protected: 8.1.2.20021129-r3
omitted: none

>>> 'Selected' packages are slated for removal.
>>> 'Protected' and 'omitted' packages will not be removed.

>>> Waiting 5 seconds before starting...
>>> (Control-C to abort)...
>>> Unmerging in: 5 4 3 2 1
>>> Unmerging mail-client/mailx-8.1.2.20021129-r2...
No package files given... Grabbing a set.
/usr/sbin/ebuild.sh: /var/db/pkg/mail-client/mailx-8.1.2.20021129-r2/mailx-8.1.2.20021129-r2.ebuild: line 43: unexpected EOF while looking for matching `"'
/usr/sbin/ebuild.sh: /var/db/pkg/mail-client/mailx-8.1.2.20021129-r2/mailx-8.1.2.20021129-r2.ebuild: line 70: syntax error: unexpected end of file

!!! ERROR: mail-client/mailx-8.1.2.20021129-r2 failed.
!!! Function , Line 1297, Exitcode 1
!!! error sourcing ebuild

!!! FAILED prerm: 1

And the ebuild looks like this:

# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/mail-client/mailx/mailx-8.1.2.20021129-r2.ebuild,v 1.5 2004/06/24$

inherit ccc eutils

MX_VER="8.1.1"
S=${WORKDIR}/mailx-${MX_VER}.orig

DESCRIPTION="The /bin/mail program, which is used to send mail via shell scripts."
SRC_URI="ftp://ftp.debian.org/debian/pool/main/m/mailx/mailx_${MX_VER}.orig.tar.gz
mirror://gentoo/multifix.diff.gz
mirror://gentoo/20021129-cvs.diff.bz2"
HOMEPAGE="http://www.debian.org"

DEPEND=">=net-libs/liblockfile-1.03
virtual/mta
!mail-client/mailutils
mail-client/mailx-support"

SLOT="0"
LICENSE="GPL-2"
KEYWORDS="x86 ~ppc sparc alpha ~mips hppa ia64 amd64"

src_unpack() {

unpack ${A}
cd ${S}
epatch ${DISTDIR}/20021129-cvs.diff.bz2 || die "patch failed"
epatch ${DISTDIR}/multifix.diff.gz || die "patch failed"
if use ia64 ; then
epatch ${FILESDIR}/mailx-64bit.diff || die "patch failed"
fi
}

src_compile() {

is-ccc && replace-cc-hardcode

# Can't compile mailx with optimizations
_CFLAGS=$(echo $CFLAGS|sed 's/-O.//g')

make CFLAGS="$_CFLAGS" || die "make failed"

}

src_install() {

dodir /bin /usr/share/man/man1 /etc /usr/lib

insinto /bin
insopts -m 755
doins mail

doman mail.1

dosym mail /bin/Mail
dosym mail /bin/mailx
dosym mail.1 /usr/share/man/man1/Mail.1

cd ${S}/misc
insinto /usr/lib
insopts -m 644
doins mail.help mail.tildehelp
insinto /etc
insopts -m 644
doins mail.rc

}

This is as of a sync this morning. The ^A wasn't in there when I looked so I guess that has been corrected. I paired up all the "'s and can't find the missing one. Maybe I'm overlookin it.

Thanks,
Robert
Back to top
View user's profile Send private message
kallamej
Administrator
Administrator


Joined: 27 Jun 2003
Posts: 4831
Location: Gothenburg, Sweden

PostPosted: Sun Jun 27, 2004 5:35 pm    Post subject: Reply with quote

It seems like your looking in the ebuild in /usr/portage/... That one is used when you install the package. The ebuild is then copied to /var/db/pkg/... together with a load of other info. This is necessary since the ebuild may no longer be in the tree, or has changed without being revision bumped when you unmerge the package. Thus, look in /var/db/pkg/mail-client/mailx-8.1.2.20021129-r2/mailx-8.1.2.20021129-r2.ebuild and you should find the problem there.

Note also that emerge sync will not touch the ebuilds in /var/db/pkg other than changing the category. And it is probably the recent net-mail/mail-client category change that is the problem here. But afterwards I don't think the ebuilds are scanned for sanity and hence nothing will be fixed in them.
_________________
Please read our FAQ Forum, it answers many of your questions.
irc: #gentoo-forums on irc.freenode.net
Back to top
View user's profile Send private message
mallchin
l33t
l33t


Joined: 21 Jan 2003
Posts: 655
Location: United Kingdom

PostPosted: Mon Jul 05, 2004 3:20 pm    Post subject: Reply with quote

Good good...

How come the files in /var/db/pkg/ differ from /usr/portage/ ??
_________________
6700 @ 2.66GHz, 4Gb RAM, 2 x 500Gb, 8800 GTX, PhysX, X-Fi, 24" Widescreen, Tux mascot
Back to top
View user's profile Send private message
kallamej
Administrator
Administrator


Joined: 27 Jun 2003
Posts: 4831
Location: Gothenburg, Sweden

PostPosted: Mon Jul 05, 2004 7:29 pm    Post subject: Reply with quote

mallchin wrote:
Good good...

How come the files in /var/db/pkg/ differ from /usr/portage/ ??

Like I said above, because not every change in an ebuild warrants a revision bump and emerge sync normally doesn't update the ebuilds in /var/db/pkg. There's been a few threads/bug reports about the lack of revision bump when an ebuild is changed, such as this thread.
_________________
Please read our FAQ Forum, it answers many of your questions.
irc: #gentoo-forums on irc.freenode.net
Back to top
View user's profile Send private message
mallchin
l33t
l33t


Joined: 21 Jan 2003
Posts: 655
Location: United Kingdom

PostPosted: Mon Jul 05, 2004 9:52 pm    Post subject: Reply with quote

Right-O.

Is it safe to sync these two repositories manually?
_________________
6700 @ 2.66GHz, 4Gb RAM, 2 x 500Gb, 8800 GTX, PhysX, X-Fi, 24" Widescreen, Tux mascot
Back to top
View user's profile Send private message
kallamej
Administrator
Administrator


Joined: 27 Jun 2003
Posts: 4831
Location: Gothenburg, Sweden

PostPosted: Mon Jul 05, 2004 11:07 pm    Post subject: Reply with quote

I really don't know whether there are any adverse effects of such a manual sync. Probably not, but it shouldn't be necessary. If portage introduces errors in the ebuilds in /var/db/pkg, it is either bug that should be reported or just one of those things. What is it exactly that you want to achieve that isn't possible to do in the case that there is a problem, and only then, now that you know where to look?
_________________
Please read our FAQ Forum, it answers many of your questions.
irc: #gentoo-forums on irc.freenode.net
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


Joined: 14 Mar 2003
Posts: 9004
Location: beyond the rim

PostPosted: Tue Jul 06, 2004 11:59 am    Post subject: Reply with quote

The bug is already known and fixed in 2.0.51 (bug #46096).
Back to top
View user's profile Send private message
mallchin
l33t
l33t


Joined: 21 Jan 2003
Posts: 655
Location: United Kingdom

PostPosted: Tue Jul 06, 2004 5:04 pm    Post subject: Reply with quote

Great stuff, I'll leave things as are then.
_________________
6700 @ 2.66GHz, 4Gb RAM, 2 x 500Gb, 8800 GTX, PhysX, X-Fi, 24" Widescreen, Tux mascot
Back to top
View user's profile Send private message
GamesBond
n00b
n00b


Joined: 15 Mar 2004
Posts: 66
Location: Amsterdam

PostPosted: Thu Jul 15, 2004 9:18 am    Post subject: Reply with quote

I just did an emerge sync and still it did not emerge. Why is this bug still not fixed in the normal portage tree?
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


Joined: 14 Mar 2003
Posts: 9004
Location: beyond the rim

PostPosted: Thu Jul 15, 2004 10:06 am    Post subject: Reply with quote

Because it's not a problem in the portage tree.
Back to top
View user's profile Send private message
GamesBond
n00b
n00b


Joined: 15 Mar 2004
Posts: 66
Location: Amsterdam

PostPosted: Thu Jul 15, 2004 10:17 am    Post subject: Reply with quote

Agree, seems like an error in the ebuild but surely the corrected ebuild is not waiting for stability testing? The current ebuild can hardly be regarded stable as is :(
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


Joined: 14 Mar 2003
Posts: 9004
Location: beyond the rim

PostPosted: Thu Jul 15, 2004 10:21 am    Post subject: Reply with quote

No, the ebuild in the portage tree is stable, the problematic ebuild is in your installed package database which is not touched on a `emerge --sync`, so we can't fix it.
Back to top
View user's profile Send private message
mallchin
l33t
l33t


Joined: 21 Jan 2003
Posts: 655
Location: United Kingdom

PostPosted: Thu Jul 15, 2004 11:13 am    Post subject: Reply with quote

I am still confused about this one.

Are the two repositories the same?

If yes, why store two seperate copies of the ebuilds?

If no, how do they differ and why?

It seems clear to me to sync them manually of they are the same. Easy fix.
_________________
6700 @ 2.66GHz, 4Gb RAM, 2 x 500Gb, 8800 GTX, PhysX, X-Fi, 24" Widescreen, Tux mascot
Back to top
View user's profile Send private message
robmoss
Retired Dev
Retired Dev


Joined: 27 May 2003
Posts: 2634
Location: Jesus College, Oxford

PostPosted: Thu Jul 15, 2004 4:35 pm    Post subject: Reply with quote

The copy stored in /var/db/pkg is the ebuild in the form that was used when the package was merged. The copy in /usr/portage is the current ebuild. Sometimes these will differ - ecatmur's "revcheck.sh" script will help you determine which ones. Don't just copy the new ebuild over - remerge the package using "emerge --oneshot package".
_________________
Reality is for those who can't face Science Fiction.

emerge -U will kill your Gentoo
ecatmur, Lord of Portage Bash Scripts
Back to top
View user's profile Send private message
naknak
n00b
n00b


Joined: 10 Dec 2003
Posts: 12

PostPosted: Thu Jul 15, 2004 6:04 pm    Post subject: Reply with quote

Genone wrote:
No, the ebuild in the portage tree is stable, the problematic ebuild is in your installed package database which is not touched on a `emerge --sync`, so we can't fix it.


I think Genone is partially corred: it is not automatically fixable by portage. But the -r3 versoin of the ebuild file could, knowing that the r2 version was broken, explicitly check for the broken version of the ebuild in /var/db/pkg and patch it.

Its an ugly hack, but its less ugly than thousands of users wondering why their emerge broke.

And it puts the fix (and the responsibility for making and testing it) very close to where the original breakage was.
Back to top
View user's profile Send private message
robmoss
Retired Dev
Retired Dev


Joined: 27 May 2003
Posts: 2634
Location: Jesus College, Oxford

PostPosted: Thu Jul 15, 2004 6:13 pm    Post subject: Reply with quote

No, that's a problem with Portage which occasionally causes a maligned write when copying an ebuild. It's not specific to any particular ebuild, and the fashion in which it breaks is not repeatable. So no, your solution won't work (and I don't think things are allowed to install anything to /var/db/pkg anyway). Not only can we not do anything to fix it once we've checked it, we can't even check for it!

When Portage 2.0.51 shows up, these errors will go away; for now, they must be fixed manually.
_________________
Reality is for those who can't face Science Fiction.

emerge -U will kill your Gentoo
ecatmur, Lord of Portage Bash Scripts
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


Joined: 14 Mar 2003
Posts: 9004
Location: beyond the rim

PostPosted: Thu Jul 15, 2004 6:16 pm    Post subject: Reply with quote

naknak wrote:
Genone wrote:
No, the ebuild in the portage tree is stable, the problematic ebuild is in your installed package database which is not touched on a `emerge --sync`, so we can't fix it.


I think Genone is partially corred: it is not automatically fixable by portage. But the -r3 versoin of the ebuild file could, knowing that the r2 version was broken, explicitly check for the broken version of the ebuild in /var/db/pkg and patch it.

a) I'll personally kick everyone who writes to /var/db/pkg from within an ebuild, that's portage territory and should never be touched by ebuilds. Even if it might be justified in this case, if you break the rule once it will be broken by others in the future too.
b) The old ebuild isn't always broken.
c) You don't necessarily know which version of the ebuild resides in /var/db/pkg.
d) Actually if we could fix it automatically it would be done by portage checking /var/db/pkg for broken ebuilds (as a portage bug introduced the problems)
e) see a)
Back to top
View user's profile Send private message
robmoss
Retired Dev
Retired Dev


Joined: 27 May 2003
Posts: 2634
Location: Jesus College, Oxford

PostPosted: Thu Jul 15, 2004 6:23 pm    Post subject: Reply with quote

Genone wrote:
I'll personally kick everyone who writes to /var/db/pkg from within an ebuild


Can I watch? :P
_________________
Reality is for those who can't face Science Fiction.

emerge -U will kill your Gentoo
ecatmur, Lord of Portage Bash Scripts
Back to top
View user's profile Send private message
GamesBond
n00b
n00b


Joined: 15 Mar 2004
Posts: 66
Location: Amsterdam

PostPosted: Thu Jul 15, 2004 8:19 pm    Post subject: Reply with quote

Genone wrote:
I'll personally kick everyone who writes to /var/db/pkg from within an ebuild

Which basically means that we should just leave everyone to find out the hard way that an old ebuild was broken?

This is another major reason for me to step away from Gentoo..... I'm REALLY annoyed by the number of broken ebuilds and the things you have to 'fix' manually because it wasn't right in the first place. And usually the fixed ebuild only appears in portage weeks after :(

If it's broken it should be fixed instead of making it something you have to dig for
Back to top
View user's profile Send private message
HomerSimpson
l33t
l33t


Joined: 25 Jan 2003
Posts: 869
Location: Ohio, USA

PostPosted: Thu Jul 15, 2004 10:55 pm    Post subject: Reply with quote

tobechar wrote:
There is an error in the ebuild.

/var/db/pkg/mail-client/mailx-8.1.2.20021129-r2/mailx-8.1.2.20021129-r2.ebuild

You will need to go to line 19.

Code:
DEPEND=">=net-libs/liblockfile-1.03
        virtual/mta
    !net-mail/mailutils
    mail-client/mailx-support^A


You simply need to remove the ^A from the end of line 19 and replace with a double-quote.

Code:
DEPEND=">=net-libs/liblockfile-1.03
        virtual/mta
    !net-mail/mailutils
    mail-client/mailx-support"   #  Quote Added.


Thank you!

See now this is what I like about Gentoo. No program/OS/distro is perfect but there are plenty of people here to help. :)
_________________
The strong must protect the Sweet.
Back to top
View user's profile Send private message
robmoss
Retired Dev
Retired Dev


Joined: 27 May 2003
Posts: 2634
Location: Jesus College, Oxford

PostPosted: Fri Jul 16, 2004 12:03 am    Post subject: Reply with quote

GamesBond wrote:
This is another major reason for me to step away from Gentoo..... I'm REALLY annoyed by the number of broken ebuilds and the things you have to 'fix' manually because it wasn't right in the first place. And usually the fixed ebuild only appears in portage weeks after :(

If it's broken it should be fixed instead of making it something you have to dig for


So don't use Gentoo yet. Come back to it in two years when it's more mature. Debian was just like this when they started out too, you know. It's only now, where they have hundreds upon hundreds of developers and a mature package manager, that they can start thinking about rigorous QA. We just don't have the time or the tools for it yet. Part of being a Gentoo user is a willingness to help and to be helped.

But of course, if you do leave, you'll be leaving behind what is easily the best power-user distro out there. Nothing else gives you the same level of configurability.
_________________
Reality is for those who can't face Science Fiction.

emerge -U will kill your Gentoo
ecatmur, Lord of Portage Bash Scripts
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
Goto page 1, 2  Next
Page 1 of 2

 
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