User Tools

Site Tools

Translations of this page:
  • en

start
Repo Usage/Installation

To use these packages, it’s recommended you install slackpkg+ to manage 3rd party Slackware repositories on your systems. slackpkg+ has no arch requirements, as it’s all script based, so all systems can install and use it. Our packages are all signed with our GPG Key's and slackpkg+ will check and verify that for you during installs/updates.

I have included a generic slackpkgplus.conf file set to update from my GNOME repositories. Here is the slackpkgplus.conf if you choose this to manage your GNOME DE. This file gets downloaded to /etc/slackpkg as the root user. If you plan on using slackpkg+ you will need to set the PKGS_PRIORITY=( gnome ) to gnome so that any packages in this repository do not get overwritten by Slackware's packages. Granted there is only 1 to 3 packages that would get overwritten. Those packages would be: gjs, gtk4,and pango ( if it is included within the repositories .

https://reddoglinux.ddns.net/linux/slackpkg+/pkg/slackpkg+-1.8.0-noarch-7mt.txz This is slackpkg+

https://reddoglinux.ddns.net/linux/gnome/slackpkgplus.conf This file is a generic config file for slackpkg+

 # PKGS_PRIORITY=( gnome ) You will need to put gnome in PKGS_PRIORITY 
 # so that gnome libraries get upgraded over Slackware's
 # this will allow Gnome to stay updated. And upgrade Slackware's Gnome System Libraries as well.
  # use this to keep the GNOME packages updated to the latest stable release for 43.x
  # This is for Slackware-Current Only
  #MIRRORPLUS['gnome']=https://reddoglinux.ddns.net/linux/gnome/43.x/x86_64/
  #MIRRORPLUS['gcs43']=https://slackware.lngn.net/pub/x86_64/slackware64-current/gcs/gcs43/
  # use this to keep the GNOME packages updated to the latest stable release for 44.x
  # This is for Slackware-Current Only
  #MIRRORPLUS['gnome']=https://reddoglinux.ddns.net/linux/gnome/44.x/x86_64/
  
  # use this to keep the GNOME packages updated to the latest stable release for 45.x
  # This is for Slackware-Current Only
  #MIRRORPLUS['gnome']=https://reddoglinux.ddns.net/linux/gnome/45.x/x86_64/

You will need to edit this file and uncomment out which version of GNOME you would like on your system. After uncommenting out which version you would like please follow these commands.

  slackpkg update gpg
  slackpkg update
  slackpkg install gnome
  slackpkg upgrade-all

or

  slackpkg update gpg
  slackpkg update
  slackpkg install gc43
  slackpkg upgrade-all

If you choose to install packages manually, without slackpkg+, that’s always an option, but keep in mind many of these packages are included in Slackware already, but we are going to be updating them. To that end you’ll need to ensure when installing them, you use “upgradepkg –install-new *.txz” or “upgradepkg –reinstall –install-new *.txz” on your package directory.

After choosing to either use slackpkg+ or to download all packages and use “upgradepkg –reinstall –install-new *.txz” there will be a need to edit the rc scripts. The avahi package needs it’s rc scripts started locally upon boot, but you’ll need to add them to your /etc/rc.d/rc.local:

  #Start avahidaemon
  if [ -x /etc/rc.d/rc.avahidaemon ]; then
  /etc/rc.d/rc.avahidaemon start
  fi

#Start avahidnsconfd

  if [ -x /etc/rc.d/rc.avahidnsconfd ]; then
  /etc/rc.d/rc.avahidnsconfd start
  fi
  

and also in /etc/rc.d/rc.local.shutdown: (if one doesn’t exist, you will need to create it)

  #Stop avahidaemon
  if [ -x /etc/rc.d/rc.avahidaemon ]; then
  /etc/rc.d/rc.avahidaemon stop
  fi
  #Stop avahidnsconfd
  if [ -x /etc/rc.d/rc.avahidnsconfd ]; then
  /etc/rc.d/rc.avahidnsconfd stop
  fi

Ensure all four of those files are chmod +x as well so the daemon starts upon boot.

In order for GNOME to run using X11 or Wayland, it must be loaded through gdm. You can boot to a console and run “telinit 4” as root to start gdm after booting or edit /etc/inittab and change the run level from 3 to 4, and upon your next boot, gdm will load automatically.

The only other bit of work required is adding a status bar to GNOME. After your first login to the session, open the Extensions application and enable the appIndicator status bar. If you do this fast enough the first login, the HP Printer Agent should load and be visible in your title bar. If you manage to do it after you get an error message and close it, have no fear, it will start on your next session.

That should be enough to get you going with GNOME on Slackware.

Setting default language/time zone

Slackware by default ships/enables the en_US.UTF8 locale. While booting the liveslak, the extlinux boot menu gives you the option to change the locale and time zone to your preference. Those settings will persist until shutdown of the system.

If you choose to install the liveslak system, you will have to set the locale properly for it to persist locally each boot. Edit ‘/etc/profile.d/lang.sh” to set your desired locale, or you can optionally add the flags to your user “.profile” within your home directory to have a system locale of one language and your user use another.

Setup “/etc/ntp.conf” so your network-enabled system reaches out to a ntp server to sync time accordingly. I’ve heard of some issues with GNOME showing time that is wrong, so verify Slackware and the gnome-control-center aren’t fighting each other for setting time. The easiest way is to let the network do it, but you may have reason to not use a network. Setting the date manually can be done with the “date” command on the cli, where you can specify your time zone, as well as use UTC time if you wish on your system.

That should be enough to get one going with GNOME on Slackware.

Updating an existing GNOME Installation:

To update an existing system from @N4teR properly, please run these commands as root:

  slackpkg update gpg
  slackpkg update
  slackpkg install gnome
  slackpkg upgrade-all

If you are updating GNOME LiveSlack from @jloc0 To update an existing system properly, please run these commands as root:

  slackpkg update gpg
  slackpkg update
  slackpkg install gcs
  slackpkg upgrade-all

This will ensure you pick up any newly added packages and update the GNOME DE as well. I will provide new packages as well for new users, existing ones should be good to go with the above commands.

Gnome Boxes 42.x and 43.x

If you are installing Gnome Box's for either 42 or 43 you will need to make sure that you include the below commands in /etc/rc.d/rc.local and in /etc/rc.d/rc.local_shutdown

 #Start libvirt daemon
 if [ -x /etc/rc.d/rc.libvirt ]; then
 /etc/rc.d/rc.libvirt start
 fi
 #Stop libvirt daemon
 if [ -x /etc/rc.d/rc.libvirt ]; then
 /etc/rc.d/rc.libvirt stop
 fi

The required packages for Gnome Box's is as followed:

  • osinfo-db-tools
  • osinfo-db
  • libosinfo
  • yajl
  • numactl
  • libvirt
  • libvirt-glib
  • libvirt-python
  • gtk-vnc
  • spice-protocol
  • spice
  • usbredir
  • spice-gtk
  • device-tree-compiler
  • libnfs
  • snappy
  • vde2
  • virglrenderer
  • libslirp
  • qemu
  • virt-manager
  • libcacard
  • phodav
  • libovf-glib
  • gnome-boxes
VTE, LIBNMA AND NETWORKMANAGER-OPENVPN

Please make sure you install vte, libnma, networkmanager-openvpn and ibus-gtk4 from Slackware these 4 packages will work side by side with the original's.

We build libnma, vte, networkmanager-openvpn and ibus with the gtk4 hooks when the Slackbuild is done it will produce libnma-gtk4, vte-gtk4, networkmanager-openvpn-gtk4 and ibus-gtk4 #These 2 packages are the work of @jloc0 (Jay) libnma-gtk4 and vte-gtk4 #I worked on the Networkmanager-openvpn-gtk4 package (1-1-2023) Due to needing my VPN Server

LIBNMA-GTK4 # Remove all extra bits included in the base libnma package # This package is _ONLY_ for the gtk4 lib

  • rm -r $PKG/usr/doc
  • rm -r $PKG/usr/include
  • rm -r $PKG/usr/share/glib-2.0
  • rm -r $PKG/usr/share/gtk-doc
  • rm -r $PKG/usr/share/locale
  • rm -f $PKG/usr/share/vala/vapi/libnma.deps
  • rm -f $PKG/usr/share/vala/vapi/libnma.vapi
  • rm -f $PKG/usr/share/gir-1.0/NMA-1.0.gir``
  • rm $PKG/usr/lib${LIBDIRSUFFIX}/girepository-1.0/NMA-1.0.typelib
  • rm $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig/libnma.pc
  • rm $PKG/usr/lib${LIBDIRSUFFIX}/libnma.so.0.0.0
  • rm $PKG/usr/lib${LIBDIRSUFFIX}/libnma.so.0
  • rm $PKG/usr/lib${LIBDIRSUFFIX}/libnma.so

VTE-GTK4 # Remove all other files from created package, as we only need to ship the gtk4 # libraries that are missing from Slackware's official package

  • rm -r $PKG/etc
  • rm $PKG/usr/bin/vte-2.91
  • rm -r $PKG/usr/include/vte-2.91
  • rm $PKG/usr/lib${LIBDIRSUFFIX}/girepository-1.0/Vte-2.91.typelib
  • rm $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig/vte-2.91.pc
  • rm -r $PKG/usr/libexec
  • rm $PKG/usr/lib${LIBDIRSUFFIX}/libvte-2.91.so*
  • rm $PKG/usr/share/gir-1.0/Vte-2.91.gir
  • rm -r $PKG/usr/share/glade
  • rm -r $PKG/usr/share/locale
  • rm $PKG/usr/share/vala/vapi/vte-2.91.deps
  • rm $PKG/usr/share/vala/vapi/vte-2.91.vapi

NETWORKMANAGER-OPENVPN-GTK4 # Remove all extra bits included in the base Networkmanager-openvpn package # This package is _ONLY_ for the gtk4 lib

  • rm -fr $PKG/usr/share
  • rm -fr $PKG/usr/lib
  • rm -fr $PKG/usr/libexec
  • rm -fr $PKG/usr/lib64/NetworkManager/libnm-vpn-plugin-openvpn*

IBUS-GTK4 # Remove all extra bits included in the base ibus package # This package is _ONLY_ for the gtk4 lib

  • rm -r $PKG/etc/
  • rm -r $PKG/usr/{doc,bin,include,share,man,libexec}/
  • rm -r $PKG/usr/lib64/python{2.7,3.9}/
  • rm -r $PKG/usr/lib64/pkgconfig/
  • rm -f $PKG/usr/lib64/libibus*.{la,so}*
  • rm -r $PKG/usr/lib64/gtk-{2.0,3.0}/
  • rm -r $PKG/usr/lib64/gtk-4.0/4.0.0/immodules/*.la
  • rm -r $PKG/usr/lib64/girepository-1.0/
Thanks

Hey, thanks found this on LQ today – Luna bittin Jernberg (GNOME Foundation Member and Slackware current user since some weeks)

start.txt · Last modified: 2023/12/08 01:55 by nater