Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
Unix Operating Systems Software

OpenPKG 1.0 Released 222

Ralf S. Engelschall writes: "I'm proundly announcing today the release of OpenPKG 1.0, the world of cross-platform RPM-based Unix software packaging. A flexible and powerful software packaging facility, OpenPKG eases installation and administration of Unix software across several platforms. It primarily targets the Unix platforms FreeBSD, Linux and Solaris, but is portable across mostly all modern Unix flavors. OpenPKG was created in November 2000 and after over one year of development it is already a mature technology in production use. It is available as Open Source and is further maintained by both my development team at Cable & Wireless Germany and our contributors. For more details visit openpkg.org and ftp.openpkg.org."
This discussion has been archived. No new comments can be posted.

OpenPKG 1.0 Released

Comments Filter:
  • by Anonymous Coward on Friday January 11, 2002 @11:01AM (#2823168)
    Wouldn't it have been smarter to port an existing advanced package management system/format like .deb to other UNIX flavours rather than inventing yet another system? Isn't that some serious reinventing-the-wheel?

    Isn't that what open source software is all about? Just as in commercial software, a bunch of different groups work on the same thing in the attempt to be the best, most widely adopted, and thus the standard?

    In commercial software, the development and marketing effort goes on only as long as the company can afford it, but in open source it can go on forever as people work endlessly on different versions of the same software that nobody will use! That way you can be forced to have all of the different package managers installed (and keep them updated) so you can use the various software packages you might want to download!
  • Re:hmm... (Score:3, Insightful)

    by datajack ( 17285 ) on Friday January 11, 2002 @11:07AM (#2823190)
    I very much doubt it.
    Different systems have different requirements in packages. At a minimum
    • Processor & architecture for binaries
    • Filesystem layout
    • Configuration requirements for related software (not everywhere, for instance uses the same inetd.conf format)
    • Dependancies on libraries
    • Naming conventions for packages
    • etc..etc..etc..
    I hate to be a pessimist (OK, that's probably a lie ;) but, as you would still need individual packages for almost every platform, I don't see what the big deal about this is?
    The only thing I can see being good about it is on systems where you don't have a vendor supported pacakging system as good as RPM. But, if it's purely for functionality, why not just port apt?
  • Re:Time loss (Score:5, Insightful)

    by Captain Morgan ( 160029 ) <cmorgan&alum,wpi,edu> on Friday January 11, 2002 @11:16AM (#2823241) Homepage
    Right... why not judge the two based on some kind of technical merit, like their features? And it would really be nice if the debian people and the redhat people got together and standardized on the next generation package format that they would both be happy with.
  • by ichimunki ( 194887 ) on Friday January 11, 2002 @11:17AM (#2823244)
    While I appreciate this work, what I really don't understand is why not work on building a tool that doesn't rely on "packages" so much as it relies on source tarballs that are independent of any packaging system.

    What *I* want (and yes, I am coding this myself) is a system that only knows as much as necessary to get the package from its original source in the rawest form available. Then the system takes the package and builds/installs it using a user account set aside for the purpose of installing non-base software.

    Optimally the package system will help the user write a shareable makefile of sorts and save/share that with other systems that user has and with other users. Then, once the build is done, you zip the build directory back up so that if you should need to work with them again the whole mess is handy.

    At its very best the package system recognizes source sources such as tarballs via FTP and HTTP, but also CVS. And finally some hooks to external information sources (announcement lists, a central log of known changes) so that the user can be alerted to potential upgrades, bug fix releases, and security patches.

    One thing I don't like about RPM/.deb/etc is that they rely way too heavily on a database of what is installed to determine what they will install next. If I don't package my "found" software using the package system, this causes RPM/dpkg to start complaining about stuff it doesn't have that I know it does.
  • Re:hmm... (Score:5, Insightful)

    by chabotc ( 22496 ) <chabotc AT gmail DOT com> on Friday January 11, 2002 @11:17AM (#2823245) Homepage
    I don't even know how to begin replying to this, but i will give it a try ;-)

    First off, no this will not work. Due to different system calls, C libraries, different architectures (CPU etc), etc etc packages will never be that portable. Java and other (supposed to be..) cross-platform type programs might have a chance, but normal applicaties will not be.

    So, if a 'package' is not portable, what good will this do me then, you might wonder? Well the thing is, that previously, you had to make a different 'build and package tool' implimentation for every platform you want to compile your program on. pkg/ports stuff on BSD, other pkg stuff on solaris, apt on debian, rpm on redhat & other linux's.

    So this is where OpenPKG comes in. You only need to write the 'build and package tool' implimentation once (a so called .spec file). This 'source package' you can then compile on each different architecture and platform.
    (resulting in a binary usable for only that platform).

    This makes cross-platform/architecture distribution a lot easier, and a lot easier to maintain.
  • by Sargent1 ( 124354 ) on Friday January 11, 2002 @11:17AM (#2823246)
    I've already seen a number of people saying, "Yeah, great, but why didn't you port an existing system [usually Debian's] instead of writing your own solution? We don't need another package management system." This drumbeat of "don't create multiple approaches" opinion continues to get louder, and as it does so irritates me more and more.

    It's *good* that there is more than one way to do it. I'm glad that open source not only provides for the possibility of multiple approaches (the built-in allowances for forking), it has a long history of such.

    Don't like sendmail? Write a different mailer, and perhaps like postfix it will become popular. Think that the available desktop managers were built wrongly? Try coding one using your preferred approach. Having diverse solutions can help improve them all, as features from one program are pulled into others.

    The OpenPKG folks saw a need and decided to base their solution on RPM. You may not think that was the wisest choice, but they get to choose where they apply their effort. There is no One Approach to bind all open-source programmers, no One Application in any given niche to which all should contribute. One of the beauties of OSS is that I can choose where I wish to contribute.
  • Re:Time loss (Score:4, Insightful)

    by GauteL ( 29207 ) on Friday January 11, 2002 @11:26AM (#2823290)
    Why should be judge them on technical merit? Both are perfectly adequate, and even though .deb may be technically better, the main reason for people disliking rpm is the amount of incompetently built rpms available.

    My point is that .deb may be marginally better technically, but it doesn't matter as long as most projects have chosen .rpm, and the cost of remaking that decision is FAR bigger than any advantages.

    I have nothing against debs, I like them. I use Debian a lot. I like it. But there really is no point in advocating that everybody should switch to debs, because it isn't going to happen.
  • RPM's (Score:2, Insightful)

    by Will_TA ( 549461 ) <will__mann@hotmail.com> on Friday January 11, 2002 @11:29AM (#2823308) Homepage

    I guess people prefer package managers to tarballs. And I guess RPM is the most popular PM and that is why they have chosen to do it. Mircosofty? Possibly/Probbably - good? that remains to be seen. I think I'll let other people try it before I infect my system with it ;-)

    Incidently, does anybody think it strange that when we create something not Microsofty it slowly becomes Microsofty?

  • Re:Time loss (Score:4, Insightful)

    by mattdm ( 1931 ) on Friday January 11, 2002 @11:30AM (#2823317) Homepage
    I'm not even sure .deb is technically better. There's some things RPM does nicely that dpkg doesn't. (For example, the "one big patch" idea in dpkg means that if you're going to add patches of your own to an upstream package, you need to invent your own structure for keeping your changes distinct, and reinvent it for each package, as far as I can tell. RPM deals with lots of patches nicely, and I think it's one of the reasons that there are so many Red Hat-derived distributions.)
  • by Anonymous Coward on Friday January 11, 2002 @11:41AM (#2823379)
    Nice try guys, but no. Unix is already too segmented and this packaging system will not change things one bit. This is a non-NLS supporting, non-GPL'd implementation of an uninspiring packaging system which may or may not support other versions of Unix besides Solaris, BSD, and Linux. Their FAQ [openpkg.org] even contains the question "OpenPKG breaks with a few things from the good old Unix days. Why?" Thanks, but no thanks.
  • by smnolde ( 209197 ) on Friday January 11, 2002 @11:55AM (#2823447) Homepage
    The first time I typed "make install clean" in the FreeBSD ports tree I told myself I'd never do roothat again or RPMs again.

    Since FreeBSD can run the huge majority of linux applications that I need/want, i have no need to get into RPM-hell again.

    If I need to upgrade a system I use cvsup to apply the necessary patches to my source tree and make the world. If I want to update applications, I cvsup my ports tree and run portupgrade. There's nothing easier and it's very rare anything goes wrong.

    So, why build this OpenPKG thing in the first place? VC money down the tubes. I'll keep my ports and packages, but I'll never run RPMs again.

  • Why RPM? (Score:5, Insightful)

    by Anonymous Coward on Friday January 11, 2002 @11:55AM (#2823449)
    When I started using Linux, there was RPM, but then I found dpkg and apt and have never gone back.

    Last week, I tried FreeBSD for the first time. I was very impressed with the ports tree and pkg_add.

    What would be the compelling reason to use openpkg on systems with package managers better than RPM?
  • Re:RPM?!?!? (Score:2, Insightful)

    by bojolais ( 72005 ) on Friday January 11, 2002 @11:59AM (#2823470) Homepage
    Or, even more amazingly...

    $ rpm -ta yourSourceThatAmazinglyHasASpec.tar.gz

    RPM does nothing to keep a system administrator from customizing their own packages, assuming they sit down for five minutes and learn how to modify a specfile. All it does is allow you another level of control over the files (and their dependencies... and integrity) on a system.
  • Cross-platform? (Score:3, Insightful)

    by jlusk4 ( 2831 ) on Friday January 11, 2002 @12:31PM (#2823637)
    How is that when MS says "It's cross-platform: it runs on Win98 AND Win2000" we all snicker, but when somebody says "It's cross-platform: it runs on all flavors of Unix" we don't even blink?

    To me, true cross-platformness includes the ability to run on AS/400s, S/390s and VMS. Like emacs or slickedit or... perl?

    John.
  • Re:Sounds neat (Score:5, Insightful)

    by ivan256 ( 17499 ) on Friday January 11, 2002 @12:32PM (#2823648)
    Right, and furthermore it's not RPM that's playing catch up to DEB it's the quality of the available packages, and the standardization of versioning. Too many people make RPMs and assume that beacuse it's an RPM it'll work with any version of any RPM based distribution. This causes huge problems when figuring out dependancies.

    The key is to get your packages from one source, where all the binaries are built relative to the other packages in the repository so that the dependancy names and versions are uniform throughout your system. This is what debian does better then everyone else. It has nothing to do with the DEB format, and it has nothing to do with apt either.
  • by JLouder ( 203304 ) on Friday January 11, 2002 @01:13PM (#2823893)
    A Unix machine without a C compiler? Can you name a few popular systems that have this problem?

    Every production and testing system I work with has no compiler, because we build software on development systems. The compilation and the installation are separate functions.

    There's no reason to install software you don't need, and you don't need a compiler to install a software package.

    One reason not to compile your software everywhere you want to install it is because when you test the software and find that it works on your system, you don't want to invalidate that test by installing a different build of the software on subsequent systems.
  • by Samrobb ( 12731 ) on Friday January 11, 2002 @02:28PM (#2824530) Journal

    When I went to secure my home web server, I removed the various compiler(s) that had been installed by default. And make. And the various editors. Every shell except bash. All client software - ftp, ssh, telnet, finger.

    In short, I removed everything except what was absolutely needed on the box. I have SSH set up so I can connect to the box remotely, but anything else - including file transfers - happens via floppy or CD.

    I know there must be a way for a determined attacker to get wahtever software they want onto the system if it's ever compromised. I'm betting that:

    (a) the majority of attackers will be l33t script kiddies who lack the skill to compromise the system in the first place, and
    (b) anyone who has the time, skill, and energy to do so will probably be off rumaging through an interesting system somewhere else, not my dinky little P133 webserver.

  • by wowbagger ( 69688 ) on Friday January 11, 2002 @04:55PM (#2825646) Homepage Journal
    Of course BSD doesn't have this problem: the tree is maintained by a very small number of groups, all of whom are in close communications with each other, so they keep their dependancies well groomed.

    Same thing with Debian: small number of groups creating packages, therefor the dependancies are well maintained.

    Now, RPM is used by a very LARGE number of groups, many of whom are not even aware of each other's existance. Furthur, some of those groups are very sloppy about the dependancy data they add to their packages (my favorite: I want version 1.2.3-pl5-v4-x_i686_mmx_with_asm_x-thursday-4_31_b uild_3 of this package, and I won't accept any other version DAMMIT!).

    The problem is NOT in the package format, it is in the absense of any centralized agency performing QC on the builds.
  • Re:Cross-platform? (Score:2, Insightful)

    by ignavus ( 213578 ) on Saturday January 12, 2002 @02:00AM (#2827783)
    "Win98 AND Win2000" - single vendor

    "all flavors of Unix" - many competing vendors

    There is a difference.

    And "cross-platform" != "universal"

    Does slickedit run on CP/M? AmigaDOS?

Scientists will study your brain to learn more about your distant cousin, Man.

Working...