Are base packages assumed?

View: New views
8 Messages — Rating Filter:   Alert me  

Parent Message unknown Are base packages assumed?

by Zé Ninguém :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi there.

I was wondering if base or base-devel packages should go in a package
dependency list or not?
What is the current policy about that?
I noticed that the instructions to build a clean chroot tell to install
base, base-devel and sudo, but does that means the package should be
expecting them in a user system?

Regards.

Re: Are base packages assumed?

by Thomas Bächler-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Zé Ninguém schrieb:
> Hi there.
>
> I was wondering if base or base-devel packages should go in a package
> dependency list or not?
> What is the current policy about that?
> I noticed that the instructions to build a clean chroot tell to install
> base, base-devel and sudo, but does that means the package should be
> expecting them in a user system?

I recommend putting all dependencies in depends (including base
packages), as direct dependencies are used by pacman to order updates -
i.e. a package is upgraded after all of its dependencies. This sometimes
avoids weird race condition on updates.

However, we usually do not put packages from base-devel into
makedepends, although it doesn't hurt to do so. If you build anything
from our repositories, make sure you always have base-devel installed. I
wouldn't consider a missing makedepend on pkgconfig a bug, but a missing
makedepend on anything not in base-devel is definitely a bug.



signature.asc (268 bytes) Download Attachment

Re: Are base packages assumed?

by domanov :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello,

> I recommend putting all dependencies in depends (including base packages),
> as direct dependencies are used by pacman to order updates - i.e. a package
> is upgraded after all of its dependencies. This sometimes avoids weird race
> condition on updates.

> However, we usually do not put packages from base-devel into makedepends,
> although it doesn't hurt to do so. If you build anything from our
> repositories, make sure you always have base-devel installed. I wouldn't
> consider a missing makedepend on pkgconfig a bug, but a missing makedepend
> on anything not in base-devel is definitely a bug.

I recently broke up my system with a pacman -Suy, because it installed
readline 6 and not bash 4 (mirror not in sync yet). If the old bash
had the right dependency (a little 'depend = readline<6' along with
the 'depend = readline>=5.2') or the new readline the correct
conflict, it would not have been a problem.
My point is that explicit, precise dependencies (and makedependencies)
can only improve stability, not only for custom aur PKGBUILD, but in
the base system also (at least when it comes to big upstream
upgrades). So: get used to write down all dependencies, it is a good
habit and IMHO there's room for improvement for it at all levels.

My 2 cents.

Marco

Re: Are base packages assumed?

by Allan McRae-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Marco wrote:

> Hello,
>
>  
>> I recommend putting all dependencies in depends (including base packages),
>> as direct dependencies are used by pacman to order updates - i.e. a package
>> is upgraded after all of its dependencies. This sometimes avoids weird race
>> condition on updates.
>>    
>
>  
>> However, we usually do not put packages from base-devel into makedepends,
>> although it doesn't hurt to do so. If you build anything from our
>> repositories, make sure you always have base-devel installed. I wouldn't
>> consider a missing makedepend on pkgconfig a bug, but a missing makedepend
>> on anything not in base-devel is definitely a bug.
>>    
>
> I recently broke up my system with a pacman -Suy, because it installed
> readline 6 and not bash 4 (mirror not in sync yet).
>  

Are you sure it was a "-Syu" and not an "-Sy" followed by installing
something (which many people now have discovered is bad...).  The
readline and bash packages were one after the other so readline was in
the [core] repo without base for about one second.  It is unlikely any
mirror did a sync of the repo db in that time.

Allan




Parent Message unknown Re: Are base packages assumed?

by domanov :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Allan,

> Are you sure it was a "-Syu" and not an "-Sy" followed by installing
> something (which many people now have discovered is bad...).  The readline
> and bash packages were one after the other so readline was in the [core]
> repo without base for about one second.  It is unlikely any mirror did a
> sync of the repo db in that time.

Ok, I admit it was something like that ;)

 It was my older laptop, I have / mounted on a 4 G partition, and I
had 1.3 G free. I upgraded after a couple of months, so I had to
download 700 M of packages with ~2 G installed dimension. So I decided
to do it piecewise, starting with the kernel and other big pkgs
(texlive, openjdk...). Pacman downloaded and installed kernel and
dependencies, with readline 6, not touching bash 3. Then -Scc, and I
went on with another group of packages. After I while I got an error
message (something like readline.so.5 not found on filesystem) and I
was not able anymore to login as root, nor to halt or reboot. Then I
looked in the bbs and found that the problem was that I did'n install
bash4. Booted from a live cd and fixed it.
Still, pacman let me install readline 6 without upgrading to bash 4. I
consider it a bug (even if the policy and common sense say that you
should upgrade with -Syu).

Cheers,
Marco

Re: Are base packages assumed?

by Edgar Kalkowski :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Off topic: The ~2 G size of the installed packages pacman shows is complete size of all updated packages not the difference between the currently installed size and the size after the upgrade, right? So the complete upgrade might have worked for you.

Sorry to interrupt the thread. ;)

Edgar



Am oder ungefähr am Donnerstag, 09. Juli 2009, um 14:25:56 schrieb Marco:

> Hi Allan,
>
> > Are you sure it was a "-Syu" and not an "-Sy" followed by installing
> > something (which many people now have discovered is bad...).  The readline
> > and bash packages were one after the other so readline was in the [core]
> > repo without base for about one second.  It is unlikely any mirror did a
> > sync of the repo db in that time.
>
> Ok, I admit it was something like that ;)
>
>  It was my older laptop, I have / mounted on a 4 G partition, and I
> had 1.3 G free. I upgraded after a couple of months, so I had to
> download 700 M of packages with ~2 G installed dimension. So I decided
> to do it piecewise, starting with the kernel and other big pkgs
> (texlive, openjdk...). Pacman downloaded and installed kernel and
> dependencies, with readline 6, not touching bash 3. Then -Scc, and I
> went on with another group of packages. After I while I got an error
> message (something like readline.so.5 not found on filesystem) and I
> was not able anymore to login as root, nor to halt or reboot. Then I
> looked in the bbs and found that the problem was that I did'n install
> bash4. Booted from a live cd and fixed it.
> Still, pacman let me install readline 6 without upgrading to bash 4. I
> consider it a bug (even if the policy and common sense say that you
> should upgrade with -Syu).
>
> Cheers,
> Marco
>


signature.asc (204 bytes) Download Attachment

[OT] Re: Are base packages assumed?

by domanov :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Edgar,

> Off topic: The ~2 G size of the installed packages pacman
> shows is complete size of all updated packages not the
> difference between the currently installed size and the size
> after the upgrade, right? So the complete upgrade might
> have worked for you.

Bad experiences have thaught me not to do that. It might have, though.
I didn't follow the development of pacman, so I actually don't know if
there is a sort of check on available disk space yet.

Why not implement a '--no-cache' option for pacman, to delete the
downloaded tar.gz right after the successful installation of each pkg?

Marco

Re: [OT] Re: Are base packages assumed?

by Xavier Chantry-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Thu, Jul 9, 2009 at 3:56 PM, Marco<domanov@...> wrote:

> Edgar,
>
>> Off topic: The ~2 G size of the installed packages pacman
>> shows is complete size of all updated packages not the
>> difference between the currently installed size and the size
>> after the upgrade, right? So the complete upgrade might
>> have worked for you.
>
> Bad experiences have thaught me not to do that. It might have, though.
> I didn't follow the development of pacman, so I actually don't know if
> there is a sort of check on available disk space yet.
>

No check on available disk space : http://bugs.archlinux.org/task/11639
It is more complicated than it sounds, the old check was problematic
so it was removed :
http://projects.archlinux.org/?p=pacman.git;a=commitdiff;h=ed13ac2cc8dd15d8a1

Estimating upgrade size is not easy either, it is not only "new size -
old size".
Maybe "new installed size - old installed size + new packaged size"
would be accurate enough.
But this is meaningless on a partitioned system.
Also it does not take eventual scriptlets which could create files
during install.

> Why not implement a '--no-cache' option for pacman, to delete the
> downloaded tar.gz right after the successful installation of each pkg?
>

This was also requested here : http://bugs.archlinux.org/task/9710
As Nagy mentioned, one problem here is that file-conflicts check
require to first download all the packages.