License: GPL V2
------------------------------
Note for people hosting mirrors:
I added a script to index your servers, see
/usr/local/Puppy-Software-Installer/resource/servertools
Upload them to your software-folder, edit the url and server-path, run .index-server.php in a webbrowser.

--------------------------------
Bugs:
- done

MarkLast edited by MU on Sat 09 Feb 2008, 23:32; edited 27 times in total

This is absolutely fantastic! I'll be installing this installer immediately!!! Will this be the new standard installer for Puppy? One question - could you make a call to pupget from this package installer so that you don't have to use pupget at all? Just a thought....

EDIT: Just to clarify, I meant allowing a call from your software installer to pupget so it will uninstall the package.

One thing that the OLPC kids will appreciate is a central repository for everything in Puppy to make chasing down objects a thing of the past._________________JamLast edited by jam on Wed 13 Sep 2006, 02:52; edited 1 time in total

Mark,
regarding the debian .deb installer, previously you used a modified Dillo,
but I was wondering if the hv3 browser could be made to work with it?
...there's another thread with a hv3 pupget package, just 800K uncompressed.

Thanks for considering my request! Inevitably there are times when I install a package that I later regret ever installing it. If it's not a pupget package I have to go in through the console and remove the components manually. Even though I'm a techie, I still at times feel like I'm walking through a land mine, where if I remove a particular component it could potentiaolly short circuit another piece of software or even critical components of the distro. Every distro has its own idiosynchrasies, and I've done my share of damage accidentally removing key components of the OS with Knoppix-based remasters until finally getting the right result. This should cut down on the time required for cleanup, especially for the non-techies.

Another question I had was regarding the centralized locaiton of the package repository. I scanned through ibiblio.org and noticed the timestamps on some packages were as recent as a few days ago. Is ibiblio.org and its mirrors going to be the place were ALL packages will be located going forward?

Hats off to you and all the contributors of this project! You're really addressing an important area and making ease-of-use for the OLPC audience a reality! _________________Jam

- display which packs are already installed.
- Uninstall packages.
This currently lists only the installation-status of all packages on the mirrors, but not all programs installed in Puppy generally.

So I also
- added a PupGet button to be able to quickly uninstall the programs not listed in the PSI.

- install Debian packages.
Note: if you installed pb_debianinstaller_alpha09 before, uninstall it first.
The PSI will install a new beta-version PB_debianinstaller_beta01, where I removed the problematic menu-generation.
I might add a XDG-menu-generation somewhen.

To test it, install the "oneko" .deb in Desktop-Tools.

- programs without a category on the server now will be listed in "000 no category".

Alien Packages register to Pupget, and most dotpups do (those created with my DotpupWizard).
Also the .debs do, and also .pet.

So only a few dotpups not created with my wizard can not be uninstalled.

My installer is in reality no installer, just a downloader and "visual interface" for existing programs like pkgtool and debianinstaller.
Those programs themselves are only enhanced interfaces for PupGet, adding some additional functionality.
So the real packagemanagement internally remains to PupGet.

I chose the name "installer" anyway, as it is common for such programs, and easier to understand than "visual PupGet-Pkgtool-Debianinstaller-Dotpethandler-Dotpuphandler-Interface"

Thanks for the clarification. Use of the term "Software installer" to describe your Visual Interface makes sense to most, whereas the term "Downloader" will usually beg the question: "OK...I downloaded the package, now how do I install it?" The fact that Pupget is doing the actual installation behind the scenes is important to the tech guys, but to others it doesn't matter as long as the software gets installed and works.

'This app is great - I've already installed a few libraries with it to get Gnumeric 1.6.3 running and now I"m going to attempt an Alien .deb package. I'll report back soon._________________Jam

Another question I had was regarding the centralized locaiton of the package repository.

ibiblio is the host for PupGet-packages.
I'm not shure, if we should add them to PSI, because they rely on certain Puppy-versions.
For example the current MUT needs TclTk 8.5, and will not work in Puppy 1.
Of course we could add something like this on a mirror:

/pupget-Puppy-108
/pupget-Puppy-210

and so on.

---------------
"Central repository" in general:
I understand the idea, but it works different.
As we are no "company", we have no "official" mainserver for our dotpups, instead some mirrors maintained by users like Ted Dog or me. This includes a risk, for example one of our important mirrors is "dead", and we did not hear from his admin what happened ( http://puppyfiles.us by Babbs ).

So the idea of PSI is not to use a central server, but present the files from different mirrors as if they were stored on only one.

The visual result for the enduser is identical, the reliability higher.
I already started mirroring dotpups.de on Puptrix.org, this will be finished in some weeks (5 gigabyte take a while to be copied via FTP).
As webspace gets cheaper and cheaper, we might have almost "redundant" mirrors in a year, so even if I would go to jail because I could not pay the german TV-tax for the time when I was homeless, the files from dotpups.de would not be lost for the public.

yeah, though the guy sent by the judge suggested the tax should be paid when I have a job again and not earlier, the tax-agency still insists and now instructed another advocate with it .

But I think I won't have to go to jail, that was just an exagerated example

This looks fantastic, I can't wait to try it out. I was planning to revamp package management before releasing any more Grafpup iso's, but it looks like this takes care of the visual aspects of it completely.

I plan to get back to work on pkgtool shortly, BTW. The current version seems stable and relatively bug free, but I have quite a few more features that were planned and never incorporated. Mostly in the vein of enhanced dependency resolution, but also the ability to update package lists between iso releases and/or add packages from other mirrors to the list. I'm speaking of course of ~/.packages/livepackages.txt which is the main list used by Pupget. I just have to code this part very carefully so as not to break things.

I currently concentrate on the grafical interface, so having comandlinetools I can use really helps me.

I think next thing I'll add are dependency-check buttons.
And a check that runs after every new installation.

With the search, you easily can find libraries.
But in addition we need a list, that lists exactly something like
libxyz.so.0.15 is in package abcde.tar.gz

With that info, a semi-automatic dependency-"afterburner" could be added after each package-installation.
If not all depencies are met by that tool, then a helptext would appear, explaining how to use the search to find libraries .

The more automatic this could run, the better.
My plan will be working on the "symptoms", already being a good help, but far from being a real packagemanagement with dependency-resolution.

Well, the baby is still hopefully a couple weeks off. She's due around the end of the month but we've been keeping her cooped up in bed for months trying to prevent premature labor. I'll post the news to my blog when the event actually occurs. Thanks, Mark.

As to the library list, I think a separate utility could be useful here. I'm trying to keep pkgtool mainly based around the format of an unleashed package as it is right now, without extending the specs at all. It is possible for the program to read an info file if it is included, that is programmed in for future use. But really, the ability to handle dependencies can be programmed with what is already there (already partly done actually) for unleashed packages. So a library list would mainly be useful for dotpups or maybe some squashfile addons, or perhaps when trying to port something over from another distro (debian installer or similar).

So assuming people were willing to go through their packages and generate lists of the .so files, we could maintain those in the repos and just have a small utility (CLI probably) that can download the lists from multiple repos and look for a package with the requested lib. Not too hard to write, harder to get things indexed unless it is scripted. A script to look for .so files in all the packages in a directory would be useful, although it gets complicated with some of the dotpups out there that might include multiple tarballs inside the package.

Anyway, glad to have been of some small use here. And I'm really glad to see this gui come together the way it has.

You cannot post new topics in this forumYou cannot reply to topics in this forumYou cannot edit your posts in this forumYou cannot delete your posts in this forumYou cannot vote in polls in this forumYou cannot attach files in this forumYou can download files in this forum