You are not logged in.

#26 2012-06-28 13:02:23

jakobcreutzfeldt
Member
Registered: 2011-05-12
Posts: 1,041

Re: Does linux need a standard package manager?

Trilby wrote:

GUI and dependent on PolicyKit .... I stopped reading there.

You stopped reading too soon. It has a command-line tool, while the GUIs are entirely optional. It's actually fairly cool. By being abstracted and having backends for all the major package managers (including Pacman), it allows an application developer to suggest the installation of an optional dependency from within the application. PackageKit will then use the appropriate backend to install it. For example, if you're using a program that knows about MIME types and you try to open a file for which you have no handler, than program can suggest one and automatically install it with Pacman (well, libalpm) via PackageKit, whereas for a Debian user, it would be installed automatically via Apt.

PolicyKit apparently gives some freedom for tuning permissions for installing new software but I never really cared about that.

Last edited by jakobcreutzfeldt (2012-06-28 13:03:47)

Offline

#27 2012-06-28 17:50:04

Zancarius
Member
From: NM, USA
Registered: 2012-05-06
Posts: 207

Re: Does linux need a standard package manager?

ngoonee wrote:

Famous last words smile. Its good, yes, but not as awesome as you're implying.

I came from Gentoo. While I love the principle behind Portage, pacman is on the whole better and less prone to breakage. Not saying it's perfect, but it's closer to my ideal of perfection.

From what I've seen here, it seems to me that most of the problems are PEBKAC-related and stem from not reading the manpage closely enough (or at all). wink


He who has no .plan has small finger.
~Confucius on UNIX.

Offline

#28 2012-07-01 02:39:13

grte
Member
From: Canada
Registered: 2007-03-21
Posts: 42

Re: Does linux need a standard package manager?

I feel like the competition of ideas that exists because of the different package managers is a good thing.  Ideally that competition would drive each of them to innovate, and in the end they could each adopt the best parts of each other, and we all win.

Offline

#29 2012-07-01 02:55:45

/dev/zero
Member
From: Melbourne, Australia
Registered: 2011-10-20
Posts: 1,247

Re: Does linux need a standard package manager?

blackout23 wrote:

I tought about this. Wouldn't it be great if all distros had compatible packages and repos?
Maybe there are some technical issues I'm overlooking but generally I think this would have
positiv effects if it really works out. The amount of avaiable packages for every distro would grow
and developers would not have to think about building *.debs *.rpm and whatnot.
As much as I think that "having a choice" is one of the best things about linux standardization
in this area probably wouldn't hurt.

What are your thoughts?

Regards,

blackout23

I don't mind the idea, but without any attempt at implementation, this just seems like sandcastles in the air.

If you can design and implement a package management system that is clearly superior to the existing ones in enough ways that enough people care about, then people will slowly migrate over. The developers in Red Hat, Debian, Arch Linux, etc, aren't stupid. If you have a really superior product, they will realise, "hey, this new thing by blackout23 is pretty darn good, let's see if we can provide it as an optional alternative to the default package manager." When it becomes more popular than the default, it will become the new default.

It wouldn't be the first time a new system has successfully supplanted older competing standards.

If you build it, they will come.

Offline

#30 2012-07-02 02:27:44

ngoonee
Forum Fellow
From: Between Thailand and Singapore
Registered: 2009-03-17
Posts: 7,354

Re: Does linux need a standard package manager?

/dev/zero wrote:

If you build it, they will come.

Very simplified, but yes I think this is generally true.

Corrolary - if they come, someone will object to it on point of principle and either fork or refuse to switch, vowing to maintain the old option to eternity.


Allan-Volunteer on the (topic being discussed) mailn lists. You never get the people who matters attention on the forums.
jasonwryan-Installing Arch is a measure of your literacy. Maintaining Arch is a measure of your diligence. Contributing to Arch is a measure of your competence.
Griemak-Bleeding edge, not bleeding flat. Edge denotes falls will occur from time to time. Bring your own parachute.

Offline

#31 2012-07-03 17:10:00

Jristz
Member
From: America/Santiago
Registered: 2011-06-11
Posts: 1,022

Re: Does linux need a standard package manager?

My opinion
yes and not

more like a package manager that andle rpm, deb, pkg.tar.{xz,gz}, ebuild and are able to build in any distro w minimal patch (maybe the python2 for example)

this is the only thing that is needed for linux, the extensions are only these extensions for the same packages


Well, I suppose that this is somekind of signature, no?

Offline

#32 2012-07-08 10:30:45

89c51
Member
Registered: 2012-06-05
Posts: 741

Re: Does linux need a standard package manager?

A single package manager maybe but a single package format that will work on all recent distros is a MUST. A global linux app shop (that will also include commercial apps) and packaging tools that will make the devs life easy would also be nice.

If anyone wants to make linux available to the masses must bring convenience to it.

Offline

#33 2012-07-08 11:39:08

Pyntux
Member
From: Serbia
Registered: 2008-12-21
Posts: 391

Re: Does linux need a standard package manager?

Linux need rules, where is what going after installing, everything else is same, you can call it deb, tar.xz or rpm.... Same story is about libs, versions and else...


I do not speak English, but I understand...

Offline

#34 2012-07-13 17:23:13

iv597
Member
From: United States
Registered: 2011-09-18
Posts: 96
Website

Re: Does linux need a standard package manager?

Pyntux wrote:

Linux need rules, where is what going after installing, everything else is same, you can call it deb, tar.xz or rpm.... Same story is about libs, versions and else...

There are such rules: https://en.wikipedia.org/wiki/Filesyste … y_Standard

And honestly, the majority of packages I've ever installed on any distribution *tend* to follow that fairly nicely. Of course if you're building a package yourself, odds are the Makefile is going to dump stuff in /usr/local instead of /usr, but that's (1) Still fairly consistant and (2) Not going against the spec anyway AND (3) Technically the "right" way to do it for non-package-manager-installed stuff.


Currently running Arch on a Samsung Chromebook Pro (dual booted with ChromeOS), and various VPSes and Docker containers.

Dotfiles on Github

Offline

#35 2012-07-27 03:45:29

1LordAnubis
Member
Registered: 2008-10-10
Posts: 253
Website

Re: Does linux need a standard package manager?

Well, a distribution *is* a group of packages... (which also set the system default config -which is what sets distros apart)
If you have the same format packages, then you have one distro...
What about a distribution that is older than others for stability? sure, you could install newer packages on it (like you can now), but you can't just do it from any software version/server. Dependencies have to be met.
Apt seems to be a good solution for common people, but pacman is for the connoisseur.
It is nice to be able to throw a preconfigured distro on a computer you aren't going to maintain for a newbie. I just don't see how having 'one' repository would be beneficial in the long run.
And besides, what if you wanted a distro with 'different' standards... the packages would have to be different, otherwise you'd have packages that provide another package, who knows. Keeping things divided just seems simpler IMO


Any society that would give up a little liberty to gain a little security will deserve neither and lose both.
-Benjamin Franklin
The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man.
-George Bernard Shaw

Offline

#36 2012-08-07 04:37:07

benbriedis
Member
Registered: 2012-08-07
Posts: 8

Re: Does linux need a standard package manager?

I've had an idea I've been thinking about for quite a while now which you guys might be interested in...

The idea is to provide developers with a standard way to specify dependencies within the original code - i.e. to move the specification of dependencies out of the package managers and had over the responsibility to the developers. 

For example, let's say the dependencies are listed in a standard file called DEPENDENCIES within the home directory of the project code, and that the file has a standard syntax.  It should be possible for package managers to read this information automaticially and use it to help create packages.

The advantages I see to this approach are:
1. The original developers are the people best placed to know what their code is dependent on
2. Giving them this responsibility should encourage them to ensure they preserve backwards compatibility when it is desirable to do so
3. It reduces the replication of work between different Linux distributions
4. It should make it easier for users to install different versions of the software - i.e. reduce "dependency hell" when they depart from the standard distibution.

The idea derives from ideas in Component-based software engineering (see http://en.wikipedia.org/wiki/Component- … gineering).

An important thing to note is that the dependencies would NOT be on packages, but rather on INTERFACES (basically these are features or contracts if you like).  It would be up to the developers to decide which interfaces they provide, when they drop them, etc.

Here ends my essay.  If any one is interested in the idea or knows of any efforts to get something like this happening then please let me know!  I am interested in pursuing the matter further.

Offline

#37 2012-08-07 05:20:25

Zancarius
Member
From: NM, USA
Registered: 2012-05-06
Posts: 207

Re: Does linux need a standard package manager?

benbriedis wrote:

The idea is to provide developers with a standard way to specify dependencies within the original code - i.e. to move the specification of dependencies out of the package managers and had over the responsibility to the developers.

You mean like autoconf? wink


He who has no .plan has small finger.
~Confucius on UNIX.

Offline

#38 2012-08-07 05:21:40

benbriedis
Member
Registered: 2012-08-07
Posts: 8

Re: Does linux need a standard package manager?

I think I'll create a new thread for this idea as I don't want it to be overlooked.  Please post any comments about the standard dependency syntax thingy on that thread instead...

Offline

#39 2012-08-07 05:26:21

benbriedis
Member
Registered: 2012-08-07
Posts: 8

Re: Does linux need a standard package manager?

Hi Zancarius - I'll pop my reply on  the new thread I just created...

Offline

#40 2012-08-07 06:38:28

Zancarius
Member
From: NM, USA
Registered: 2012-05-06
Posts: 207

Re: Does linux need a standard package manager?

Apologies--I was mostly being snarky and couldn't help myself.

The idea is interesting, but I'm not convinced that targeting developers for this is necessarily the best thing. The fact is that developers often have enough on their plate if they target a wide variety of platforms (*BSD, Linux, OS X, Windows) and sometimes they write code that's managed by tool-specific package management system (think PyPI). Further, since different distros often have different goals, you'll find a great deal of diversity in the "default" configuration of software packages from distro to distro. Thus, it would need to be something that's targeted more or less toward package maintainers--they're the ones who know best about the slated goals and objectives of their respective distributions. I realize from a 50,000 foot review, something that superficially describes dependencies is inherently a good thing, but I can't really help myself from seeing it get muddied the instant disparate configurations are added into the mix.

The idea of depending on specific APIs is interesting since there isn't really any prescribed standard for version naming that describes when, specifically, a feature is added or dropped (well, there's always semantic versioning--but let's face it, not everyone follows it and not everyone who does follow it follows it correctly). The only problem is that if this isn't something that's somehow automatically generated, it then becomes another document-like entity the developer is left to maintain, and we all know that everyone keeps their documentation completely up to date.

Edit: The more I think about it, the more I realize that the best way to gain momentum for this sort of thing would be to have a truly cross-platform package manager that works on Linux, BSD, OS X, Windows, et al. Otherwise, it's fated to die on the vine of obscurity. In a manner, a meta-manager of sorts that could be interfaced with existing package managers (e.g. pacman) would be the path of least resistance.

Last edited by Zancarius (2012-08-07 06:41:24)


He who has no .plan has small finger.
~Confucius on UNIX.

Offline

#41 2012-08-07 07:44:03

benbriedis
Member
Registered: 2012-08-07
Posts: 8

Re: Does linux need a standard package manager?

Getting developers to adopt a standard is, of course, the challenge.  Managing dependencies is also an important part of the work though.   And there is no reason that the DEPENDENCIES file would need to be system specific.  If used widely it might help relieve some of the cross-platform burden. 

Currently we have package maintainers doing this work.  In many cases I could see developers being happy enough to have a trusted package maintainer keep the document up to date if that was really required.  If you are putting the numbers into a Arch package, why not commit them to a file in the original location too?  The fact that package management software was using the file would be enough to ensure the file was kept up to date.

The goal of a single cross-platform package manager is very gradiose.  Not to say that it couldn't be tried.  The reason I thought of DEPENDENCIES file is that it is a much smaller change and hopefully easier to get going.  Also the fruits can be enjoyed by people who choose to use other package managers.

I also like the emphasis on interfaces rather than just packages. Coming up with a versioning system would be part of the design task.  It couldn't be Semantic Versioning though because that's for packages.  Patch numbers and minor aren't relevant, and there needs to be a mechanism to allow for backward-compatible interfaces.

Last edited by benbriedis (2012-08-07 07:44:42)

Offline

#42 2012-08-08 00:32:21

Zancarius
Member
From: NM, USA
Registered: 2012-05-06
Posts: 207

Re: Does linux need a standard package manager?

benbriedis wrote:

The goal of a single cross-platform package manager is very gradiose.  Not to say that it couldn't be tried.  The reason I thought of DEPENDENCIES file is that it is a much smaller change and hopefully easier to get going.  Also the fruits can be enjoyed by people who choose to use other package managers.

Indeed it is, but the reason I suggested it is because--as pointed out in this thread--there have been numerous attempts at a unified package manager or packaging standard for Linux distros. Sadly, many of these either withered on the vine or, typically, became useful to a fairly small niche. Package management is probably the most important part of a distribution and the most likely component to differentiate one distro from the next. If you want something to become widely adopted, the best thing to do is to avoid niches as much as possible. Since every major distribution has its own form of package management, there is a tremendous amount of inertia that fights against any form of "standard" package management. Add to that the nature of open source and the fact that most distributions have ports of other distributions' major package management--or at least wrappers to support other distros' packages--and you find that standardization becomes a curio for mental exercise more than a necessity.

Personally, I think that this pursuit of a "standard" method of package management is a solution looking for a problem and fundamentally ignores several critical issues that are necessary for adoption. Starting with a platform that has virtually no package management or support for F/OSS projects, like Windows (okay, there's Ninite and others... I don't count Windows Update), and that is only integrating a store come its next major release might be worth considering. If you want to avoid the risk of obscurity, particularly in a world where package managers are already well established, you have to do something different to make yourself stick out. Otherwise you encounter people like me who don't really see much of a point to it. Further, as a developer, why would I want to worry about packaging something myself? Let the maintainers do that if they want it for their platform. If users want it that bad, they can download the sources and install it themselves.


He who has no .plan has small finger.
~Confucius on UNIX.

Offline

#43 2012-08-08 01:08:58

ngoonee
Forum Fellow
From: Between Thailand and Singapore
Registered: 2009-03-17
Posts: 7,354

Re: Does linux need a standard package manager?

While the DEPENDENCIES file sounds good in theory, distro fragmentation means that package maintainers in each distro still need to parse it manually, since packages do not have the same names in different distros (or may even be split, combined with other packages, common utilities moved around, etc.).

If that's the case, then there's no benefit from a DEPENDENCIES file as that information is already available at upstream's website normally (ignoring autoconf et. al.). Most projects I know do have an INSTALL or similar file which specifies basic dependencies already. Synchronizing the syntax would be good but unless the issues above are dealt with not much benefits to be had IMO.


Allan-Volunteer on the (topic being discussed) mailn lists. You never get the people who matters attention on the forums.
jasonwryan-Installing Arch is a measure of your literacy. Maintaining Arch is a measure of your diligence. Contributing to Arch is a measure of your competence.
Griemak-Bleeding edge, not bleeding flat. Edge denotes falls will occur from time to time. Bring your own parachute.

Offline

#44 2012-08-08 08:31:52

benbriedis
Member
Registered: 2012-08-07
Posts: 8

Re: Does linux need a standard package manager?

The major difference between my proposal and past package managers is that I'm proposing a standard for specifying interfaces rather than packages. Perhaps if a file was to be included it should be called INTERFACES rather DEPENDENCIES to avoid confusion. 

The interface names would be controlled by the developers and would be the same regardless of distro, although the exact way the interfaces would be spread across packages would vary. Interface versions should be more stable than package numbers - package names bump up whenever the implementation changes.  On the other hand if an interface is to be useful it needs to be relatively stable.

Is it a solution in search of a problem? Well APIs and plugin archectures are used elsewhere to manage large projects and to allow disparate sets of programmers to work together. The Jack audio project is just one example of the power of an interface in action in Linux. A standard for specifying interfaces may encourage more of this sort of thing.  And it doesn't need universal uptake to get things going - even if just some projects started using it might be enough to prove useful.

Offline

#45 2012-08-08 08:54:19

ngoonee
Forum Fellow
From: Between Thailand and Singapore
Registered: 2009-03-17
Posts: 7,354

Re: Does linux need a standard package manager?

You'd better specify what an 'interface' is then.... seems to me like a LOT of organizational work to duplicate what APIs already do but at a different level with minimal benefit.


Allan-Volunteer on the (topic being discussed) mailn lists. You never get the people who matters attention on the forums.
jasonwryan-Installing Arch is a measure of your literacy. Maintaining Arch is a measure of your diligence. Contributing to Arch is a measure of your competence.
Griemak-Bleeding edge, not bleeding flat. Edge denotes falls will occur from time to time. Bring your own parachute.

Offline

Board footer

Powered by FluxBB