Hi folks,
Some gslapt questions:
How do I use gslapt to update packages from a mounted ISO image? The "salix" directory on the disk is divided into several subdirectories.
How do I add a local package tree in gslapt? Specifically a CD/DVD/image? How do I configure gslapt to use that local tree for updating package data and checksums rather than obtain that information remotely from a web site?
Gslapt seems hard-coded with respect to window sizes. I have been unable to configure gslapt to remember the windows sizes I select. Each time I open gslapt the window sizes for all windows revert to some puny fixed size. I have a nice wide-screen monitor, not a 12 inch 640x480 monitor.
Background:
Several weeks ago I downloaded Salix 13.01. I installed that image to a VirtualBox machine using the Full install option.
Recently I obtained an ISO image of 13.02a. I would like to update packages.
Thinking like a non-technical point-and-click user, my first impulse is to open gslapt. I then could update from there. Doable, but that process is slow with my ISP connection. Second, thinking like a computer person, now that I have an updated ISO image available, that first method would be a duplication and waste of connection bandwidth. Instead, why not update directly from the disk image?
As a Slackware user I'm inclined to open a terminal window, mount the ISO image, and proceed from there.
As a new Salix user I'm trying to figure out how to use the ISO image, which in some respects is the equivalent of a local mirror. Yet I have no experience with gslapt. I think many non-technical users could find themselves in the same situation. For this test I prefer to stick with a graphical tool rather than "cheat" with the command line. I'm trying to think like many non-technical users.
I have noticed a troubling trend among all computer developers: the presumption of a fast broadband connection to perform package management and the presumption that all connectivity is costless. Bad presumptions. Therefore, there should be some thought and support for updating packages locally.
Thanks much.
Gslapt Questions
Re: Gslapt Questions
slapt-get FAQ #17.woodsman wrote:How do I use gslapt to update packages from a mounted ISO image? The "salix" directory on the disk is divided into several subdirectories.
How do I add a local package tree in gslapt? Specifically a CD/DVD/image? How do I configure gslapt to use that local tree for updating package data and checksums rather than obtain that information remotely from a web site?
Should be reported upstream.woodsman wrote:Gslapt seems hard-coded with respect to window sizes. I have been unable to configure gslapt to remember the windows sizes I select. Each time I open gslapt the window sizes for all windows revert to some puny fixed size. I have a nice wide-screen monitor, not a 12 inch 640x480 monitor.
There is already an easy way: to select all upgrades in gslapt and hit the upgrade button.woodsman wrote:Thinking like a non-technical point-and-click user, my first impulse is to open gslapt. I then could update from there. Doable, but that process is slow with my ISP connection. Second, thinking like a computer person, now that I have an updated ISO image available, that first method would be a duplication and waste of connection bandwidth. Instead, why not update directly from the disk image?
Yes, you can do exactly that if you like. upgradepkg --install-new works fine.woodsman wrote:As a Slackware user I'm inclined to open a terminal window, mount the ISO image, and proceed from there.
Non-technical users would just upgrade using the repositories with gslapt. I don't think that it would ever occur to them that they can upgrade by loop mounting an iso and upgrading packages from there.woodsman wrote:I think many non-technical users could find themselves in the same situation. For this test I prefer to stick with a graphical tool rather than "cheat" with the command line. I'm trying to think like many non-technical users.
Re: Gslapt Questions
Oh yes, this is annoying Would you please report it upstream?woodsman wrote:Gslapt seems hard-coded with respect to window sizes. I have been unable to configure gslapt to remember the windows sizes I select. Each time I open gslapt the window sizes for all windows revert to some puny fixed size. I have a nice wide-screen monitor, not a 12 inch 640x480 monitor.
Re: Gslapt Questions
Hmm. Okay, bear with me here. I think I see why gslapt would not let me add a local disk as a source.slapt-get FAQ #17.
I read the FAQ question. I was using the correct syntax to add the location of the disk. I had guessed correctly with that based upon using slackpkg in Slackware and Synaptic in PCLinuxOS.
However, seems the underlying slapt-get needs to find two files:
PACKAGES.TXT
CHECKSUMS.md5
PACKAGES.TXT is nowhere on the 13.0.2a disk.
Okay. I visited http://download.salixos.org/i486/13.0/. Yes, there is a copy of PACKAGES.TXT. I downloaded the file with the idea that I would copy the ISO contents to a directory and add PACKAGES.TXT. From there I could create a new disk that should work with gslapt.
The format of the PACKAGES.TXT file is the same as in Slackware, with a pointer to the location of the file in the Salix repository file tree. For example: "./salix/l"
Yet the Salix CD does not use that same file tree structure as the online repository file tree. The CD contains the following directories only:
core
basic
full
The traditional "disk set" Slackware directories (a, ap, d, e, l, etc.) do not exist on the CD.
Therefore, if I understand correctly, gslapt and the underlying slapt-get would be unable to use the Salix CD as a local source because the locations provided in PACKAGES.TXT does not match the actual disk file system.
If I wanted to use the PACKAGES.TXT file found online, then the only way I could get gslapt to use a disk as a local repository would be to match the http://download.salixos.org/i486/13.0/ file tree structure exactly.
Or I could try to generate my own PACKAGES.TXT based upon the existing Salix CD file tree structure. So I tried, using the shell script provided in the slapt-get FAQ No. 17.
I created a new directory, copied the contents of the CD, and then ran the shell script to create a new PACKAGES.TXT file. I created a new disk. Now my new Salix disk contains both of the files required by slapt-get/gslapt.
Then, to return to the original problem that prompted me to start this thread, I edited gslapt to use a local file system as my preferred respository source.
Worked like a hot knife on butter.
I think all of this never would have occured had I been able to add the disk as a source, which I could not because of the missing PACKAGES.TXT file.
When generating the ISO image for downloading, I would consider adding a PACKAGES.TXT file that matches the ISO file tree strcture. Then users could use their CDs as a local respository.
That is a good point. Most users are unlikely to try using a disk image as a local repository. Yet I suspect more than a few would try using a physical disk.Non-technical users would just upgrade using the repositories with gslapt. I don't think that it would ever occur to them that they can upgrade by loop mounting an iso and upgrading packages from there.
Although the slapt-get FAQ addresses how to use a local respository, I think a nice gesture would be to provide the path name of a physical disk in the gslapt sources list. Leave the source unchecked. That way non-technical users have a chance of using their physical disk as a source.
My primary consideration for this idea is the flawed presumption that all users have a fast broadband connection. I had that displeasure for several years. I still remember those dial-up days with disdain. My only solution was to visit somebody in the city with a pocket full of blank CDs or an empty hard drive. I returned home with those disk images. For several years that was the only way I could test distros or update software packages.
Even for those people who have slow connectivity but buy CDs/DVDs, they need a local method to install and add packages when they receive the disks. Just an idea.
Done.Oh yes, this is annoying Would you please report it upstream?
Re: Gslapt Questions
Oh, I thought you wanted to make a new CD in the first place anyway, not use the existing one.
Yes, we can definitely do that. Good idea.woodsman wrote:When generating the ISO image for downloading, I would consider adding a PACKAGES.TXT file that matches the ISO file tree strcture. Then users could use their CDs as a local respository.
Maybe, but still, the great majority of users will only just use online repositories.woodsman wrote:That is a good point. Most users are unlikely to try using a disk image as a local repository. Yet I suspect more than a few would try using a physical disk.
That is already done in the default slapt-getrc. The CD/DVD source is already there, commented out. But yes, we can add that to gslapt too. A potential problem would be that the CD does not use the same mount point for every version. HAL is used and mounts the CD under /media/$DISKLABEL. So if you get a new version, the user would need to manually edit the source list.woodsman wrote:Although the slapt-get FAQ addresses how to use a local respository, I think a nice gesture would be to provide the path name of a physical disk in the gslapt sources list. Leave the source unchecked. That way non-technical users have a chance of using their physical disk as a source.