I was helping out in this
thread regarding upgraded to dropline GNOME 3.38 using slackpkg with slackpg+. I decide to give this a shot. The last time I use GNOME was back when it was part of Slackware. So hey why not check it out.
I installed this to a VirtualBox guest. The host OS is Slackware64-current with testing (gcc10 and vtown), up to date as of ChangeLog.txt Tue Dec 1 20:18:01 UTC 2020. The guest OS is Slackware64-current. I always do Full Installs. The guest is also up to date as of Tue Dec 1 20:18:01 UTC 2020. This is a plain install, no third parties except for slackpkg+ I am using slackpkg+ version 1.7.0. From this point on, when referring to slackpkg, I am referring to slackpkg with slackpkg+
This probably is not the solution some are looking for as noted in the comments above but you can use slackpkg with a local mirror. The initial setup. This is all done on the host.
I created a bash script to mirror both the 3.36 and 3.38 packages linked to from the instructions web page. Here is the key lines from the script.
Code:
lftp -c "open http://www.droplinegnome.org/files/3.36/x86_64/testing/; mirror -v -e . dropline-gnome/36/packages"
lftp -c "open http://www.droplinegnome.org/files/3.38/x86_64/testing/; mirror -v -e . dropline-gnome/38/packages"
This places the package files in /home/non-slack/dropline-gnome/36/packages and .../38/packages.
The next step was to make the repositories compatible with slackpkg. Do this this you will need a script from AlienBob's tools:
http://www.slackware.com/~alien/tools/ called gen_repos_files.sh, read the comments in this batch file for usage. You also need to create a gpg key.
In each repository I created a repository defaults file .genreprc (Copy the sane default section from the script and tailor it to the repository. Should be self explanatory.) You do need one of these defaults file in each repository. I placed them in .../dropline-gnome/36 ...dropline-gnome/38.
Once that is completed then you run the gen_repos_files.sh on each repository to create the needed files. This is the command line I use to do this based on my setup.
Code:
USERDEFS=/home/non-slack/dropline-gnome/36/.genreprc bash gen_repos_files.sh
USERDEFS=/home/non-slack/dropline-gnome/38/.genreprc bash gen_repos_files.sh
Now the repositories are ready for use.
Setup on the VirtualBox guest. From root, I modified /etc/slackpkg/slackpkgplus.conf as follows. I included alienbobs repos to this because they are frequently used.
Code:
# The first three are to give priority to slackware64. This is a clean slackware64-current install.
PKGS_PRIORITY=( slackware64:id3lib ) # Also in alienbob
PKGS_PRIORITY+=( slackware64:ffmpeg ) # Also in alienbob
PKGS_PRIORITY+=( slackware64:oxygen-gtk2 ) # Also in alienbob
# Give priority to dropline38 over dropline36
PKGS_PRIORITY+=( dropline38 dropline36 )
PKGS_PRIORITY+=( slackpkgplus alienbob restricted )
REPOPLUS=( slackpkgplus dropline38 dropline36 alienbob restricted )
MIRRORPLUS['slackpkgplus']=http://slakfinder.org/slackpkg+/
# These are all local mirrors on my system.
MIRRORPLUS['alienbob']=file://home/non-slack/alienbob/
MIRRORPLUS['restricted']=file://home/non-slack/alienbob_restricted/
MIRRORPLUS['dropline36']=file://home/non-slack/dropline-gnome/36/
MIRRORPLUS['dropline38']=file://home/non-slack/dropline-gnome/38/
I next need to make sure my local repositories on the host are accessible to the guest. I created two directories off /home, same as on my host.
Code:
mkdir -p /home/{slackware,non-slack}
I then mount those to the corresponding location on the host. My /etc/slackpkg/mirrors points to "/home/slackware/slackware64-current/"
We are now ready to install dropline GNOME on this clean slackware64-current system.
Code:
slackpkg update gpg
slackpkg update
slackpkg install dropline36
slackpkg install dropline38
slackpkg upgrade-all
Done. dropline GNOME is installed. I rebooted the guest, then logged in as me, ran startx. dropline GNOME is running. I tried all of the default Activities, all worked, even copied over a Benny Goodman mp3 over to Music to play. As it was mentioned in further up in the comments, runlevel 4 is not working. I'm not to familiar with GNOME3 so it is a bit of a learning curve. I did try gnome-tweaks mentioned above somewhere, it works.
I did run in to one issue with using slackpkg, there was two different versions of gnome-bluetooth and two ipython's with different build numbers in the dropline38 repo. I am guessing maybe I did the mirror in the middle of an update.
This isn't a grand solution for those who want a slackpkg compatible on-line repo, but if you have to room for a local repo, this in my opinion is a decent comprimise. One draw back is you have to regenerate the repository files needed for slackpkg after each mirror update. It doesn't take that long to do though, especially since I put the mirror on the host, vice the guest. That and I'm not sure if this is the way dropline GNOME is intended to be installed as I see a reference to a script to do this. If all of the packages for 3.38 will end up in the same place and installation order is not critical this should work.
I tested this three times. Including an additional test using upgradepkg. Hope this is useful to some.