You are not logged in.

#1 2009-09-01 08:18:31

methuselah
Member
Registered: 2007-10-02
Posts: 570

I noticed that more and more PKGBUILDs are using 'any' [solved]

This kind of sucks when using something like pacbuilder to update. I always have to go back, edit the PKGBUILD, and rebuild it.

Why not just write all PKGBUILDs with:

arch=(i686 x86_64)

Last edited by methuselah (2009-09-01 10:54:53)

Offline

#2 2009-09-01 08:22:52

wonder
Developer
From: Bucharest, Romania
Registered: 2006-07-05
Posts: 5,941
Website

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

it's funny to see that you say that PKGBUILDs are wrong. pacbuilder doesn't handle 'any' architecture well so maybe try to fix that.
'any' is in there for a purpose. is doing a single package that can be installed on a i686 system as well as in x86_64. what you are suggesting is to have 2 packages. one for i686 and one for x86_64. double of space is used for a single package.


Give what you have. To someone, it may be better than you dare to think.

Offline

#3 2009-09-01 08:38:47

Stefan Husmann
Member
From: Germany
Registered: 2007-08-07
Posts: 1,391

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

lol

Offline

#4 2009-09-01 08:40:23

Xyne
Administrator/PM
Registered: 2008-08-03
Posts: 6,965
Website

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

('any') is NOT the same thing as ('i686' 'x86_64')

A package which is compiled against an architecture should use the later (i.e. specify each architecture on which it will compile). The binary package will contain the correct architecture in its name and will only work on that architecture. "any" packages are architecture-agnostic, e.g. data packages and scripting language packages (without compiled modules). The "binary" package will run on any architecture.

Pacbuilder probably doesn't handle "any" packages because there is nothing to compile. All it would do is unnecessary copying.


My Arch Linux StuffForum EtiquetteCommunity Ethos - Arch is not for everyone

Offline

#5 2009-09-01 09:41:59

fukawi2
Ex-Administratorino
From: .vic.au
Registered: 2007-09-28
Posts: 6,226
Website

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

Beat me to it Xyne tongue

Besides that, even if they were the same... Why have 2 x packages that are identical except for the filename for cases like web-based software (phpMyAdmin, phpPgAdmin, vTigerAdmin, eGroupware etc) or scripts (perl, bash etc such as sendemail)

Offline

#6 2009-09-01 09:47:10

methuselah
Member
Registered: 2007-10-02
Posts: 570

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

All right, I'm the novice..... my bad. Let's all have a good laugh at me. Add some roflol's if you feel you must.

I mean, I guess I'm in the wrong if I like to use a simple command like "pacbuilder -Su" and then have it build 20 packages and install 20 packages without me having to do anything else.... instead of having to go back and change 'any' to 'x86_64'.....

It's not that I said "it's wrong", it's just that certain packages that used to have ("i686" "x86_64") all of a sudden have switched to using ("any") in the package build.

So when upgrading the exact same packages for the last year with pacbuilder (and not having to edit those PKGBUILDs), all of a sudden there are all of these packages being written now with 'any'. So I have to edit these PKGBUILDs now..... (in a long list of packages, while not knowing which packages have switched to using 'any', it just sort of ruins the way pacbuilder had been working before when it would copy the files to a package and name it with 'x86_64' instead of 'any' )

And I understand what all of you said about "any" packages being architecture-agnostic, but in the end don't we all have either a i686 install? Or a x86_64 install? So why not just write it the way it was written last year for the exact same packages..... to be built from source (even if it copies it without building), as in the package is built with the name "package-foo.2-1-x86_64.pkg.tar.gz" instead of creating "package-foo.2-1-any.pkg.tar.gz".....

I mean I seriously don't get what's so "lol" about my question. What's so hard about having uniform PKGBUILDS that only use "i686" and "x86_64" even if the package doesn't need to be built.

Last edited by methuselah (2009-09-01 09:55:46)

Offline

#7 2009-09-01 09:59:44

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,422
Website

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

methuselah wrote:

I mean I seriously don't get what's so "lol" about my question. What's so hard about having uniform PKGBUILDS that only use "i686" and "x86_64" even if the package doesn't need to be built.

But how would you tell that it did not need built?

Anyway, talk to the pacbuilder guys to get it fixed.

Offline

#8 2009-09-01 10:02:57

shining
Pacman Developer
Registered: 2006-05-10
Posts: 2,043

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

You already had 3 explanations for the purpose of the "any" packages. What more can we do?

Seeing how clueless you are, I am very curious what is the reason you are using pacbuilder in the first place.


pacman roulette : pacman -S $(pacman -Slq | LANG=C sort -R | head -n $((RANDOM % 10)))

Offline

#9 2009-09-01 10:07:27

methuselah
Member
Registered: 2007-10-02
Posts: 570

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

shining wrote:

You already had 3 explanations for the purpose of the "any" packages. What more can we do?

Seeing how clueless you are, I am very curious what is the reason you are using pacbuilder in the first place.

Thanks for being rude. I appreciate that. Go team!

Offline

#10 2009-09-01 10:11:30

methuselah
Member
Registered: 2007-10-02
Posts: 570

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

Allan wrote:
methuselah wrote:

I mean I seriously don't get what's so "lol" about my question. What's so hard about having uniform PKGBUILDS that only use "i686" and "x86_64" even if the package doesn't need to be built.

But how would you tell that it did not need built?

Anyway, talk to the pacbuilder guys to get it fixed.

I understand what you mean Allan. And I understood Xyne, and even if wonder put some words into my mouth that I never said, i still understand him as well.....

My point was building long list of packages with pacbuilder and what I would guess yaourt would do if you used it for building from source? (I've never used yaourt so I'm not sure about this).

Whatever, this thread was useless. consider it closed.

Offline

#11 2009-09-01 10:13:14

Stefan Husmann
Member
From: Germany
Registered: 2007-08-07
Posts: 1,391

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

Apart from technical details: You want us to change a whole distribution just because one tool does not handle something in the right way? Why not having drive letters in arch, because word for windows in wine works much smoother then?

Offline

#12 2009-09-01 10:14:42

bender02
Member
From: UK
Registered: 2007-02-04
Posts: 1,328

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

I'm pretty sure that shining wasn't trying to be rude, but you really got good explanations above.
So:
- officially supporting 'any' architecture saves server space (for the repos) and time (therefore money) for devs. That's why it was implemented in the first place
- pacbuilder is an unofficial tool which apparently doesn't follow what's happening oficially with pacman
So you got 'lol'ed at because you blamed people using (officially supported) 'any' architecture in PKGBUILDs on the grounds of using some third-party tool.

EDIT: well it took me a couple of minutes to write this. too late.

Last edited by bender02 (2009-09-01 10:16:25)

Offline

#13 2009-09-01 10:25:54

methuselah
Member
Registered: 2007-10-02
Posts: 570

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

Stefan Husmann wrote:

Apart from technical details: You want us to change a whole distribution just because one tool does not handle something in the right way? Why not having drive letters in arch, because word for windows in wine works much smoother then?

Umm no. I never said that. Just like I didn't say half of the shit that I'm getting these responses from (wonder, where did I say PKGBUILDs are wrong? I only asked why they seemed to have changed and then whined about why it sucks if you use pacbuilder to update like 20-30 packages).

What's up with all of the negativity..... been here over 2 years and not once have I been treated like this by so many people for a simple question/rant. I've helped countless people with things that I knew, and have always said thank you to anyone for any bit of help. If you don't believe me check my posts.

Offline

#14 2009-09-01 10:28:57

methuselah
Member
Registered: 2007-10-02
Posts: 570

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

bender02 wrote:

I'm pretty sure that shining wasn't trying to be rude, but you really got good explanations above.
So:
- officially supporting 'any' architecture saves server space (for the repos) and time (therefore money) for devs. That's why it was implemented in the first place
- pacbuilder is an unofficial tool which apparently doesn't follow what's happening oficially with pacman
So you got 'lol'ed at because you blamed people using (officially supported) 'any' architecture in PKGBUILDs on the grounds of using some third-party tool.

EDIT: well it took me a couple of minutes to write this. too late.

Really? Calling someone clueless and then commenting like I shouldn't use a program that I've been using for over a year isn't rude?

Your answer about server space is the best answer yet. And seriously, where did I blame people..... I only asked why and then ranted a bit after being laughed at.

Offline

#15 2009-09-01 10:42:12

iphitus
Forum Fellow
From: Melbourne, Australia
Registered: 2004-10-09
Posts: 4,927

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

It's not as much server space, but practicality and workload.

-any is intended for packages with no architecture specific files/binaries -- ie packages which have no architecture and could be installed onto 'any'. Good examples include artwork, themes, python, bash and other interpreted scripts.

The benefit over using arch=(i686 x86_64) is that:
- it only has to be built once
- it only has to be uploaded once - big deal for people with miserable upload like me. I get 10KB/s max and it makes the connection unusable for anything else.
- it can be built on any Arch machine - good for devs without x86_64 boxes or vice versa
- it takes less space. minor, but a benefit regardless, particularly for larger "art" type packages.

So... the issue here is that pacbuilder needs to be modified to handle -any correctly, not the other way around. File a bug or contact the maintainer of pacbuilder. pacbuilder should just use the existing package from the repository - as a rebuild would give you something identical.

Last edited by iphitus (2009-09-01 10:45:10)

Offline

#16 2009-09-01 10:45:48

wonder
Developer
From: Bucharest, Romania
Registered: 2006-07-05
Posts: 5,941
Website

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

@methuselah i'm sorry of saying that. that was my understanding when you said "Why not just write all PKGBUILDs with:".


Give what you have. To someone, it may be better than you dare to think.

Offline

#17 2009-09-01 10:46:52

bangkok_manouel
Member
From: indicates a starting point
Registered: 2005-02-07
Posts: 1,556

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

pacbuilder should just use the existing package from the repository - as a rebuild would give you something identical.

yeah, just let pacbuilder fail on those, it makes no difference in the end.

Offline

#18 2009-09-01 10:50:06

methuselah
Member
Registered: 2007-10-02
Posts: 570

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

iphitus wrote:

It's not as much server space, but practicality and workload.

-any is intended for packages with no architecture specific files/binaries -- ie packages which have no architecture and could be installed onto 'any'. Good examples include artwork, themes, python, bash and other interpreted scripts.

The benefit over using arch=(i686 x86_64) is that:
- it only has to be built once
- it only has to be uploaded once - big deal for people with miserable upload like me. I get 10KB/s max and it makes the connection unusable for anything else.
- it can be built on any Arch machine - good for devs without x86_64 boxes or vice versa
- it takes less space. minor, but a benefit regardless, particularly for larger "art" type packages.

So... the issue here is that pacbuilder needs to be modified to handle -any correctly, not the other way around. File a bug or contact the maintainer of pacbuilder. pacbuilder should just use the existing package from the repository - as a rebuild would give you something identical.

Thank you. And I'm sorry to anyone that mistook my rant as an attack on Arch and the way they do things (it wasn't, I was only asking why?).

This is obviously a pacbuilder issue. I've been schooled both positively and negatively. This thread should be done. I'll mark it solved.

Offline

#19 2009-09-01 10:53:51

methuselah
Member
Registered: 2007-10-02
Posts: 570

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

wonder wrote:

@methuselah i'm sorry of saying that. that was my understanding when you said "Why not just write all PKGBUILDs with:".

Cool, I might have worded my questions in a bad way and started this thread off in a negative way with my "This kind of sucks" rant. I am sorry for this.

Last edited by methuselah (2009-09-01 10:56:19)

Offline

#20 2009-09-01 10:55:27

kgas
Member
From: Qatar
Registered: 2008-11-08
Posts: 718

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

methuselah, this thread really shed some light and clarified the users doubt. No one hurts your feeling. The reply comes how one understand the issue. I agree that every one can not always search to find why such change had happened. Cheer up, common smile.

Offline

#21 2009-09-01 22:33:43

Gen2ly
Member
From: Sevierville, TN
Registered: 2009-03-06
Posts: 1,529
Website

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

shining wrote:

You already had 3 explanations for the purpose of the "any" packages. What more can we do?...

Forgive me for paraphrasing OpenBSD here, hmm mmm, it goes something like "No package will be included in the repos without updated/included documentation(man page)."  Couldn't find the exact quote, but pretty close.  'man pkgbuild' currently:

arch (array)
Defines on which architectures the given package is available (e.g.
arch=('i686' 'x86_64')).

The only other place I've seen this mentioned is once in the wiki and I would mistake the definition too:

The arch array should contain 'i686' and/or 'x86_64'  depending on which architectures it can be built on. You can also use 'any'  for architecture independent packages, but the official repositories of Arch (core, extra, community) do not support it yet, thus if you want the package to enter the main repositories, then do not use 'any' at the moment. You can certainly use 'any' for your personal repositories.

Source

Not stomping the ground here but I once read too that 'any' meant, well, "any" (probably a post here in the threads).  Not throwing blame around but it looks like several people got this idea too.


Setting Up a Scripting Environment | Proud donor to wikipedia - link

Offline

#22 2009-09-01 22:48:35

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,422
Website

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

Yeah, documentation of the "any" feature needs update.  Surprisingly, "any" has been around for ages, just never used by Arch, so I wonder why no-one noticed that before.

As an aside, some work has been done on pacman by Shining that will make it harder to stuff your system by installing packages for the wrong architecture.  This will mean the "arch" in the package name (ultimately in the internal PKGINFO file) will play a more important role and make it clearer than "any"  means installable on "any" architecture.

Offline

#23 2009-09-02 02:28:06

bangkok_manouel
Member
From: indicates a starting point
Registered: 2005-02-07
Posts: 1,556

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

Allan wrote:

As an aside, some work has been done on pacman by Shining that will make it harder to stuff your system by installing packages for the wrong architecture.  This will mean the "arch" in the package name (ultimately in the internal PKGINFO file) will play a more important role and make it clearer than "any"  means installable on "any" architecture.

Could please let us know a bit more? Like you, I'm using 64on32, is it going to be an issue? TIA.

Offline

#24 2009-09-02 02:38:53

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,422
Website

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

bangkok_manouel wrote:

Could please let us know a bit more? Like you, I'm using 64on32, is it going to be an issue? TIA.

As am I...  I quickly tested the patches and there is a configuration option that allows you to ignore this check.  Can not recall if it was on a per repo basis though.

Offline

#25 2009-09-02 09:08:16

shining
Pacman Developer
Registered: 2006-05-10
Posts: 2,043

Re: I noticed that more and more PKGBUILDs are using 'any' [solved]

Gen2ly wrote:
shining wrote:

You already had 3 explanations for the purpose of the "any" packages. What more can we do?...

Forgive me for paraphrasing OpenBSD here, hmm mmm, it goes something like "No package will be included in the repos without updated/included documentation(man page)."  Couldn't find the exact quote, but pretty close.  'man pkgbuild' currently:

arch (array)
Defines on which architectures the given package is available (e.g.
arch=('i686' 'x86_64')).

Do you know what e.g. mean ?
This is only an example. You can put ANYTHING in arch.
arch=('ANYTHING')
then just define CARCH=ANYTHING in makepkg.conf and you will be able to use makepkg
and for pacman, no configuration is even needed : it accepts absolutely everything smile

The only other place I've seen this mentioned is once in the wiki and I would mistake the definition too:

The arch array should contain 'i686' and/or 'x86_64'  depending on which architectures it can be built on. You can also use 'any'  for architecture independent packages, but the official repositories of Arch (core, extra, community) do not support it yet, thus if you want the package to enter the main repositories, then do not use 'any' at the moment. You can certainly use 'any' for your personal repositories.

Source

This part of the wiki is obviously outdated and just needs an update (by someone with the appropriate rights. this page is apparently locked).


pacman roulette : pacman -S $(pacman -Slq | LANG=C sort -R | head -n $((RANDOM % 10)))

Offline

Board footer

Powered by FluxBB