Rewrite the Slint wiki page because so many things have changed from the last version. Thanks Tony for doing all this work.

stormdragon2976 2023-06-10 21:34:44 -04:00
parent 289a799953
commit 2e80d3c957

546
Slint.md

@ -1,210 +1,336 @@
## Preamble
I'll prefix commands exicuted in the console as normal user with a dollar sign and those needing super user with a hash
mark, or number sine.
After console commands press enter.
For example:
$ mkdir fubar
means that as normal user you'll type mkdir and press enter, which makes the fubar directory.
Hopefully that should be obvious, but there it is. So here we go.
## Multilib
First get the multi-lib stuff. In a console, in the user's home directory, and as normal user make a directory called alien.
$ mkdir alien
$ cd alien
$ wget http://tty1.uk/scripts/slackware/alien-multilib-rsync.sh
$ chmod 755 alien-multilib-rsync.sh
Running the script requires super user access. The su command gives your normal user root access, and after typing it will require your root password. Notice the hash mark that now appears in your prompt to replace the dollar sign.
$ su
And to run it:
# ./alien-multilib-rsync.sh
When it's done downloading and installing the multi-lib compatible stuff, you'll be returned to the command prompt. It's always a good idea to exit the super user access when you don't need it, as normal user access is not likely to allow you to break your system without trying to.
# exit
To exit this directory and return to your home directory:
$ cd
## Blacklisting Packages
Blacklist the following in /etc/slapt-get/slapt-getrc by simulating an upgrade. CAUTION: you do not want to answer yes to the question to continue, you're only doing this to see what packages you're going to blacklist so say no after taking note of the packages that are to be upgraded. From the home directory and as normal user do the following:
$ su
# slapt-get -upgrade
Again, after taking note of the eleven packages that are listed to be upgraded, say no and be returned to the prompt.
# cd /etc/slapt-get
I'm going to choose Nano as the editor since I use it and hey, I'm holding the big bad-ass black sword, so there... hahhahahahaha! Using your favorite editor go into the slapt-getrc and look for the line that says:
EXCLUDE=
In Nano you can just arrow down or use control plus w for the where is command and type in all capital letters EXCLUDE and press enter and be taken to the line you need to modify. There will be some stuff there, so go to the end of it. Add an entry for each of the eleven packages of which you took note on this line, with a control char (shifted 6) before and a comma to separate. The line should look like this:
EXCLUDE=^devs,^kernel-huge-*,-i?86-,^zzz-settings,^gcc,^gcc-g++,^gcc-gfortran,^gcc-gnat,^gcc-go,^gcc-java,^gcc-objc,^glibc,^glibc-i18n,^glibc-profile,^glibc-solibs
Save and exit the file. In Nano you use the control plus x key combination, press y to save, and press enter to accept the suggested file name. You'll be returned to the command prompt.
Now you can upgrade without undoing your multi-lib install. This does mean, however that you'll need to run the script in your aliend directory if there are major upgrades as Slapt-get will no longer handle them.
exit the root:
# exit
## Audiogame-manager Dependencies
I am assuming you already have Audiogame-Manager, so we're going to use it to see what your system does and doesn't have for it's successful exicution. Yes yes, I know, a hatchet would come in handy right about now, and you really should have one around the house somewhere ya know? 'cause when it comes to exicutions...
Go to the directory where you have Audiogame-Manager and type:
$ ./audiogame-manager -c
You should get a checklist of everything that Audiogame-Manager needs, and whether the dependencies have been met. Take note of the ones you don't have, but we'll save WINE and Winetricks for last. Return to the root of the home directory and do the following:
$ su
# sbopkg
A nice menu comes up and you'll want to choose the first option, which is to sync with the repository, and when that's done, arrow down to the search option, press enter on that, and type the name of one of the packages other then WINE, or Winetricks. You'llsee if, for example you type:
xclip
that there are results for that, so arrow to the first match and press enter. You'll see that it isn't installed, and that there are several options. Go to the bottom option which is to download build, and install and press enter.
On the next menu go down to the bottom option and again press enter. You'll be told that the package has been added to the cue, so press enter again, and the process will begin. When done, press enter again, and navigate back up the menus with escape until you're at the main menu.
Repeat the process for all the other packages you may need. You'll find that you have most of them and Sbopkg will have the ones you don't have by default. When done installing what Audiogame-manager needs, again, excluding for now WINE and Winetricks,just press escape until the program exits.
Once the dependencies minus WINE and Winetricks are installed, there will still be a couple of things to do, so just press escape until Sbopkg completes the last install.
## Wine and Winetricks
Now we have to edit a file and add some text to it so that we can help to minimize the text that the Mate Terminal will spew out when WINE starts. from your home directory you'll get root access again:
$ su
now we're going to edit a file, and, like the alien-multilib-rsync.sh file we downloaded before, we'll make sure it's executible. So type:
# nano /etc/rc.d/rc.local
At the bottom of the file, add the following:
sysctl vm.mmap_min_addr=4096
Save and exit the file. Next, type the following:
# chmod 755 /etc/rc.d/rc.local
and you're returned to your root prompt. We want to return to normal user status so type:
# exit
Next we have to do a little more to suppress some of WINE's barfiness by downgrading a package that complains a lot and will slow WINE to a crawl as far as installing and starting games. Slint shipts with Fontconfig 2.1.13, but we have to go to the Slackware ftp site and get the earlier 32-bit package. We'll use wget to do it in one go. From your home directory as normal user do the following:
$ cd Downloads
Notice the capital d in downloads. Now type:
$ wget ftp://ftp.slackware.com/pub/slackware/slackware-14.2/slackware/x/fontconfig-2.11.1-i486-2.txz
Once the package is downloaded do the following as root:
$ su
# installpkg fontconfig-2.11.1-i486-2.txz
This will install this version of the package over the other one. It's version is 2.1.11, and it shouldn't be messed with by upgrading as it wasn't installed with Slapt-get, but if it ever is, just keep this one handy and reinstall if necessary.
I like to do things from my home directory as a reference, but if you've followed along, you're in your Downloads directory, and as root, so from here:
# exit
$ cd
Remember Sbopkg? well we're going to return there but first we have to add a line to a file, so that when the editor comes up during the next thing we're going to do, it'll be Nano, unless you like VI, which is the default one with Slint and indeed with Slackware. i use Nano so we'll make that one the editor that sbopkg calls. Remember that big black sword? Yeah, how could ya not...
From your home directory again, gain root access with su as before:
$ su
# nano /etc/sbopkg/sbopkg.conf
Add the following to the end of the file; Capitalization is important:
export EDITOR=nano
Save and exit the file.
Now, we're ready to install WINE. Still from your home directory, you still have root access since we didn't exit yet, so type:
# sbopkg
Now, as before, we are going to use Sbopkg to search for, and install WINE itself. But a teeny bit of explanation here, because you'll be looking at and yes, editing another file. This one will be the slackbuild associated with WINE, and tells the package manager how to download, build the source files, and in our case whether we want to compile for 32-bit, or 64-bit or as in our case, both.
We're going to get Sbopkg to download a local copy of the slackbuild file so we can modify it, and then get the package manager to use our modified file instead of the default one. Being in the Sbopkg program now, we arrow down to the search option and press enter. Enter the search terms, in this case the word wine, I just used lower case and press enter.
As before, Sbopkg brought up a list of matches, and the one we will want is in the system directory and will be either WINE or WINE Staging. Either will work, but Staging may have some glitches in it, although I've gotten both to build. Also, the Staging build will take a lot longer, and this process will take a while anyway, so have you some goodies or whatever will keep you busy for at least an hour maybe more depending on the speed of your computer.
For the purpose of this how-to, I'm going to assume the stable version. So arrow down to where you hear system wine is not an emulator and press enter. Here you will get the message about WINE not being installed, and several options. Arrow down to custom customize the .info or slackbuild and press enter. Select the first option by pressing enter on it, which will create the local copy of the slackbuild. You'll be put in your editor, in our case Nano.
This file is pretty good size, but you will need to pay attention to only two lines, which you could search for, but you're a Slackware user, and don't mind a bit of exploration right? heeehe. So arrow down until you encounter the line beginning with:
WIN32
Yes, you can use the control plus w for where is, long as you find it. Examine this line and you'll see that at the end of it is the word yes in lower case, followed by a right brace. That's good, it tells us that the compiler will build 32-bit stuff, which we want. Make sure you're at the beginning of the line when you arrow down to the next line, which begins with:
WIN64
This line looks the same, only there's a no in the place where we saw a yes in the previous line. As you may expect, we do want that no to be a yes, so go to the end of this line with the end key, and without removing anything else, change that no to yes, Then save the file.
This will return you to the menu. press escape to go back to the previous menu. From this menu arrow down to process download build and install wine and press enter. Another menu is presented and here, just arrow down to the last option and press enter. You'll here that a cue has been added with an okay button. Just press enter here, and shut your speech up. You can check it from time to time, but there shouldn't be any problems because you already installed the dependencies, so while the process chugs along you can have a lunch break while you wait.
When the process does finish, you'll have a message telling you this, with an okay button,upon which you'll press enter. Press escape until you get to the main menu, but don't exit the program yet, as there's one more thing we need for WINE to work correctly.
From the main menu, arrow down again to the search option, and press enter. Type:
winetricks
into the search box and press enter. Arrow down until you find the correct match, and press enter.
From here, just arrow down to the process download build and install option, press enter on that, and then enter again to start the cued process.
This will take considerable less time, about as quickly as you can shut speech up and again you'll have an okay window to let you know it completed. Now you can press escape until you're returned to a command prompt. To get back to your normal user access type:
# exit
## Final Notes
Everything from this point has been done in the console, the X-windows environment wasn't mentioned, but from here on out, you'll be doing things there, as that's where all the graphical user stuff happens, including WINE, and all your audio games.
Audiogame-Manager will not be described further from here, as it has it's own fine documentation found at <https://stormgames.wolfe.casa/audiogame-manager.html>.
When you start Audiogame-Manager, you should know that it will call Qjoypad, which will allow you to configure a game controller, such as a joystick for whatever game you want to play. Qjoypad pops up a floating window, for setting up your game controller for whatever game you're playing and is good for computers not using a desktop manager like Mate, but adds a little complexity if you do use Mate.
You can quickly press escape to dismiss Qjoypad, but if you have a controller it really does enhance your gaming experience, And there's a how-to specifically for eyes-free configuration right on your Slint system in the /usr/doc/qjoypad 4.3.1 directory.
Since I do use the Mate desktop, I just make sure that Qjoypad is already running by pressing the alt plus f2 keys to get the run dialog, and type:
qj
and autocomplete should fill in the name of the file. Press enter, and you should be returned to the terminal.
If using Mate, you can have Qjoypad running in the background, and using the top pannel, you can get back that floating window whenever you need it and dismiss it as well, unless you're running something like Ratpoison, a very cool anti-mouse window manager with no desktop. In this case, Qjoypad will be there and will have nowhere to hide as it were.
WINE will still spew errors, about FontConfig not being able to find various files after choosing the game you want to play with Audiogame-Manager, but you can ignore these messages by shutting up your speech.
Hope this helps people and happy audio gaming, especially with Audiogame-Manager
## Getting Your System Ready
Okay, here it is:
The how-to for getting Audiogame-manager to work on Slint.
Why, well because of all them audio games out there that people are playing in Windows that we want to play too.
This little guide assumes you have some familiarity with the command line, since you're a Slint user, but even a beginner shouldn't have any trouble with this, since you won't have to make the mistakes I did. Hehehehe!
Most things can be done as the regular user, so any commands etc you'll execute as your normal user will be preceded by the dollar sign, ($)
and as the super user, or root there will instead be a hash or number sign. (#)
Where some of the root commands will be, you can precede the command with the word sudo followed by a space.
Also, it is assumed that your Slint system is fully upgraded, if it isn't, do that now, as it will be very important that nothing should need to be upgraded for one of the steps to follow.
# slapt-get -u
Also, you may want to attach a monitor to your pc if it's a desktop as even though you may not need to see graphics the X windowing system will very likely expect one and will work better with one then without.
**CAUTION! CAUTION! CAUTION!**
Some of these instructions will involve editing files, which I must strongly recommend that you back up before editing, in case you make a mistake.
## Getting audiogame-manager
So first, we need to go get the subject of our task, Audiogame-manager.
It's stored in what's called a git repository, and we can get it from there with a program called git.
This will download all the stuff we need to run, install/uninstall and other things relating to the audio games it supports, which are quite a few.
What I recommend is making a subdirectory in your home directory, I call mine git, like this
$ mkdir git
followed by the Enter key.
Now you'll want to get into that directory, with the following command.
$ cd git
followed by the Enter key.
now we're going to call the git program and tell it to go to the repository and fetch the Audiogame-manager stuff we will need with this command.
$ git clone https://stormux.org/storm/audiogame-manager
Followed by the Enter key.
You'll see a lot of text on the screen, so you can shut speech up with the Control key a few times until it's done.
When it is, we can see what we've got with the following command.
$ ls
followed by the Enter key.
We have another directory, called
audiogame-manager/
Notice the slash at the end?
That tells us that it's a directory and not a file, which means we'll be going into that with yes, the cd command. Like this.
$ cd audiogame-manager
followed by the Enter key.
Audiogame-manager can do some other things then just running the audio games it supports, one of these is to check to see that all the required software is there before you try to use it and have it just fail. Pretty cool eh?
The following command will execute the audiogame-manager.sh script, play any news about the project, and then check to see if you have all of what it needs to run.
So here's the command.
$ ./audiogame-manager.sh -c
followed by the Enter key.
## Installing Wine
We get the message that we need to install wine before continuing, so rather then fight it, we'll just play along.
Before we do, however, a little explanation is in order. Most programs, and indeed operating systems are 64-bit nowadays, yet many of the games we want to play are 32-bit, so what to do?
Well, Slint, like it's parent Slackware, is what we call multi-lib capible, though this is not configured by default.
So we have to prepare things a bit.
So, still being in our /git/audiogame-manager directory, we want to go back up to the home directory where we started out. Really easy. just do this command.
$ cd
followed by the Enter key.
First we need to make the system multi-lib compatible, so it can run both 32-bit and 64-bit applications, and this will be done by means of an automation script for just this purpose, and we'll use a program called wget, which also grabs things from the internet, but in this case it's going to be a single file, which we'll run as root to fetch and install the multi-lib components.
So we'll get the script first with this command.
$ wget https://slackware.uk/~dive/scripts/alien-multilib-rsync.sh
followed by the Enter key.
You'll get a bunch of text on the screen, indicating that the file is downloading. It shouldn't take too long, but when it's done, we're going to want to check it to make sure that it points to the correct repository, as we're using slackware 15.0 packages and not 14.0 ones.
This is where we'll be using a text editor, to at least check, but if necessary, edit that file to point to the correct repository, and instead of our normal user, we'll have to do this as root.
We'll also have to make sure the file is executable, also as root.
We're going to be using super user privileges for a bit, so we'll not use the sudo command here.
So type the following command.
$ su
Followed by the Enter key.
When asked for your password, type the root password you configured the system with when installing it followed by the Enter key.
As always, when the password is typed, it will not be displayed.
Now you'll notice that your prompt has changed to let you know you're now doing things as the super user.
We're now going to edit this file. I use nano but any text editor will do. as an example I would type the following from here.
# nano alien-multilib-rsync.sh
followed by the Enter key
The line we're interested is a few from the top, and after some notes it would do one well to read.
Here's the line in my copy of the file.
URL=rsync://bear.alienbase.nl/mirrors/people/alien/multilib/15.0/
So, we see that the number there is 15.0 but after getting it yours may be different. If not, then no need to change it, if it is, change the 14.0 or 14.2 or whatever it might be, so that the numbers match those in the example above.
When that's done, close your text editor, saving your work.
We're now going to make sure that the file is indeed executable so type the following command.
# chmod +x alien-multilib-rsync.sh
followed by the Enter key.
We now know that the file is executable, so we'll run it, and then silence the speech with Keypad Enter.
# ./alien-multilib-rsync.sh
followed by the Enter key, then silence the speech with the Keypad Enter key.
On a decent connection this can take anywhare from a half hour, or perhaps a bit longer, on older system it could be an hour or so.
You can check to see if things are still processing by typing the Control key, and if it's still busy, just type the Keypad Enter key and speech will go silent until the next key press.
When it's finally done, and you're returned to the command prompt, you'll now be multi-lib capable, so next it's time to go get WINE and anything else we need.
Having made sure the system is fully upgraded before beginning to do anything in this guide, we're now ready to procede to the next step, which is to blacklist the packages that make the system multi-lib, so future system upgrades will not over-write them and undo all your hard work.
As we're still logged in as the super user, the next thing we're going to do is to go to a directory outside the home directory of your normal user, with the following command.
# cd /etc/slapt-get
followed by the Enter key.
Here's a file whith which we're going to be very familiar in this tutorial, as we're going to have to come back to it again to set it up to get wine and other things we will need.
The file in question is slapt-getrc, which controls various options for the slapt-get utility used to update install and upgrade Slint.
In this file, there is a line beginning with
EXCLUDE=
all in uppercase which we are going to add to.
The best way to show you this is to give you an example of what one of my test boxes has in this line.
Here it is.
EXCLUDE=^devs,^kernel-huge-*,^kernel-generic-*,^kernel-modules-*,^kernel-headers-*,-i?86-,^zzz-settings,^mozilla-firefox,^aaa_glibc-solibs,^gcc,^gcc-brig,^gcc-g++,^gcc-gdc,^gcc-gfortran,^gcc-gnat,^gcc-go,^gcc-objc,^glibc,^glibc-i18n,^glibc-profile
To get a list of these packages to exclude you could pretend to do an upgrade with the command
# slapt-get -upgrade
followed by the Enter key, but instead of answering y to the upgrade, you'd just take note of all the packages that are to be upgraded, writing them down somewhere else, then aborting the install by answering n to the upgrade.
This is why the system needs to be fully upgraded, because everything that you see that the system wants to upgrade, is all the multi-lib stuff you just spent time installing.
As a note, you'll have noticed that I had a few things already there, such as Firefox that don't appear in the list of potential upgrades. Your EXCLUDE= line may look different, so keep that in mind.
This is also why you'll have, or will, before we go on back up this or any file you are about to edit, especially if it'sa system file as this one is.
You'd then add them in the format you see on the
EXCLUDE=
line in that file using whatever text editor you like, I use nano myself.
Close the editor you used to edit this file, thereby saving your work, but we don't want to exit superuser mode yet.
In fact, re-open your slapt-getrc file, because there's one more line we want to change.
There are several lines in the file that begin with the word
SOURCE
and some of them will have a hash or number sign in front of that word and some will not.
Each of these lines enables fetching from various Slackware repositories used by Slint.
The one we want to change is the one that says
# SOURCE=https://slackware.uk/people/alien/sbrepos/15.0/x86_64/:DEFAULT
All we want to do is remove the hash or number sign from that line and then save the file.
Now after doing that, we can close the editor saving your work, and return to our home directory.
In my case I would do
# cd /home/testo
followed by the Enter key.
Now, we want to update the package lists that slapt-get accesses, and we'll do this just as we do when updating the system, like this.
# slapt-get --add-keys
followed by the Enter key.
When that finishes we then type
# slapt-get -u
followed by the Enter key.
After that completes,
# slapt-get -upgrade
followed by the Enter key, and we can answer y to the upgrade prompt.
You'll see that the packages we marked for exclusion will not be upgraded and thus our multi-lib configuration will not be over-written.
One last thing before we move on to the next step, from time to time, especially after huge upgrades, you'll want to run the
# ./alien-multilib-rsync.sh
followed by the enter key command so that the multi-lib components will get upgraded.
If there have been no changes to the repo you'll be informed of this, and if there have been changes, the script will update accordingly and exit.
Now it's time to get WINE, which is the application we use to run Windows software in Linux.
It's as easy as the following command
# slapt-get -i wine
followed by the Enter key.
You'll want to silence speech as this takes a bit, and will be quite verbose if you don't.
When it finishes though, you'll have WINE installed.
For now, we can leave the superuser mode, by typing
# exit
followed by the Enter key.
## Audiogame manager Dependencies
You'll now see you're back to your normal user as it has a dollar sign instead of the hash or number sign in the prompt again.
We want to go to the audiogame-manager directory to check and if need be, write down any software audiogame-manager says we need to install.
So from here type
$ cd git/audiogame-manager
followed by the Enter key.
Once again, we're going to have audiogame-manager check to see what we need to install.
$ ./audiogame-manager -c
followed by the Enter key.
There'll probably be a dialog box asking if you'd like to hear the latest news, go ahead and type the Enter key to listen to the news, which will play through the audio device you use to listen to music, play games etc.
Once the news plays, audiogame-manager then checks to see what programs it needs and will tell you what's missing that you'll need to install.
I've been running a test box while doing this article, and discovered that after WINE installed, audiogame-manager reported two packages that were not installed.
They happened to be cabextract and dos2unix and they are rereally easy to install.
So, letsget back to the good ol' superuser mode.
We can even do it from here in the audiogame-manager directory. Since you now have the instruction on how to do that, we won't rehash that, so once you're superuser again, lets install some packages.
We'll install cabextract, like this.
# slapt-get -i cabextract
followed by the Enter key.
When that finishes, we next will install dos2unix in the same way.
# slapt-get -i dos2unix
Again followed by the Enter key.
Now we can exit superuser mode by typing
# exit
followed by the Enter key.
Now you're back in normal user mode, and we can run
./audiogame-manager.sh -c
followed by the Enter key.
The news you'll hear is quite old now, but you'll only hear it once, so since you probably heard it the first time, you'll not hear it again unless there are updates.
while on the subject of updates, if audiogame-manager needs an update, when you run it it will tell you when it does, giving you a dialog box giving you the choice to let it update, highly recommended, or to not update.
After running the check, you should see that all the programs it needs are installed and you're good to go.
Now, there's just one more thing to do, and we can begin playing with audiogame-manager.
type
$ cd
followed by the Enter key.
Now you're back in your home directory, I like to do this to keep from getting lost, and we're going to a place we normally don't have to go and work with another file, and a text editor will be needed and once again, we'll be the superuser.
so, here we go. so become superuser again, and when you are, type
# cd /etc/rc.d
followed by the Enter key.
The file we need to edit, then make executible is called rc.local, just one of the many rc scripts in this directory.
What it does, is runs various commands that you want to do before you log in.
so, using your favourite text editor open this file. I use nano myself, but there are many.
Look for the end of the file, and on a blank line type the following.
sysctl vm.mmap_min_addr=4096
then close the file, saving your work.
Now, to make this file executable, just like before, we type
# chmod +x rc.local
followed by the Enter key.
Now when the computer boots up, every time, it'll execute that little command which will prevent WINE from griping more then it already sometimes does, and will make the installs and even games startup speed a bit better.
We're done here, so we can just exit superuser mode by typing
# exit
folowed by the Enter key.
If you're not in your home directory just type
$ cd
followed by the Enter key, and you should be.
We have a lot of games to choose from, and various switches that make audiogame-manager do the things it does. Now that you've got it installed, the rest of the reading is really already at the following url and will tell you how to use the various aspects of the manager.
<https://git.stormux.org/storm/audiogame-manager>
Happy gaming! Remember to get to audiogame manager, simply type from anywhere in the terminal:
cd ~/git/audiogame-manager
Followed by the enter key.