hoek
This is the latest workstation, this chapter described the hardware and how to re-install when needed.
system
You can use dmidecode for most of this info:
| dmidecode | |
|---|---|
| Motherboard | Gigabyte GA-78LMT-USB3 6.0 |
|--------------|-----------------------------------------------------------------------------------------+
| Processor | AMD FX(tm)-9590 Eight-Core Processor |
| Memory | 32 GB |
| Audio | Advanced Micro Devices, Inc. [AMD/ATI]
HDMI Audio [Radeon HD 5400/6300 Series] |
| Video | Advanced Micro Devices, Inc. [AMD/ATI] Cedar [Radeon HD 5000/6000/7350/8350 Series] |
| Monitor | Philips monitor : PHL 272S4L : 2560x1440 (55hz) |
re-install
Mostly this will be to get the video video driver at the right resolution. This guide involves three re-installs :
- 21 dec 2016
- 11 jul 2017
- 27 nov 2018 : new ssd
A lot of problems where gone with the debian 9.6 release. For instance the dual monitor setup worked out of the box !! Full resolution. So start with stretch 9.6 and then read this chapter, you can skip almost all video related stuff.
Skip that, ... nouveau has problems of it's own. Read next chapter
nouveau crashes
This usually means a completely hanging X server, while you van mostly still login with ssh, but even a reboot doesn't come back up again.
The last message is usually something like :
| log | |
|---|---|
Often you will find the last program you started before the crash, like :
Also mplayer, actually a 100 % hit can be made with the groundhog.avi video on the desktop:
Some suggestions i have been trying, add these to the boot options in /etc/defaults/grub
| grub | |
|---|---|
Run update-grub to activate !
In fact... this one does fix the groundhog.avi test.. so monitor this It was changed 2 December 2018, just after a major hang.
Next one would be :
The suggestions came from : visit
The second one heavily benefited from the first so keep this guide around.
operating system
Debian Jessie 8, for the time being since there is no workable video driver compatible with Debian Stretch 9 (Yet ->). (obsoleted with 9.6!!)
Stretch is now a viable choice, if 9.6 or higher.
To spare you some time here are the steps :
- Download the non-free version (!) to avoid driver issues. I found it at visit
- Simple dd it onto an usb stick without partitioning.
- Don't start the live option, it hangs. Just directly do text install
- Install everything in one partition. (see mongodb chapter later on !)
- Install it up to a working debian with the wrong resolution : 1920x1024.
First attempts were installing the catalyst driver and after that the crimson driver, everything points to the fact that crimson alone should be enough.
Note
The catalyst driver installs ok but gives massive performance problems. Use the crimson driver.
restore
If .. like me you fucked up again and landed into a non working xserver, you might be tempted to install the system again.
As a last resort try this.
This document : atinotes lead me at least to a working x server , albeit with lower resolution.
The main command to run is uninstalling the driver :
| uninstall | |
|---|---|
It does provide you with a working X server again, but not on the full resolution. So this is what seemed to do the trick : debian_amd
Go to the Jessie section.
In short :
| ati | |
|---|---|
Now in my case that did not go as smoothly as that, since during dpkg installation debian kept complaining about the glx-diversions package which was 'half-installed'
half-installed glx-diversions
To resolve this problem where you can not install and not uninstall, try to uninstall and watch the messages it generates.
| glx | |
|---|---|
It will complain about some file while making 'diversions'. My solution was to remove that file or directory completely and retry the uninstall. I presume i got the correct file, because it starts to uninstall a lot of stuff, but if not it will complain about another one, remove all if needed.
After that you can install everything again and the dpkg -i * will succeed. Reboot to see the result.
resolution
This will give you a new server but still it starts at 1920x1080, but that's the largest known resolution to the system :
| xrandr | |
|---|---|
But if you look in /var/log/Xorg.0.log, you will see these entries:
So it IS possible, to add this mode, follow this guide philips_monitor, however, use the timings that are listed in the Xorg.0.log file instead. The file now working is :
/usr/share/X11/xorg.conf.d/50-philips.conf
libGL.so.1 missing
With the setup described in the chapter before this does not even seems to be needed. But if you get it somehow : Mostly this is solved by providing a link :
| libgl | |
|---|---|
crimson driver
This will work for a new installation but i could never get it to work afterwards. Do the previous chapters if possible.
This is the one that is not (yet) available for Stretch only for Jessie. It might have been removed from public view, but i managed to get it from here the last few times :
| crimson | |
|---|---|
To be precise this command came from this guide : visit
which seems to have a complete script to install the card on ubuntu, it won't hurt to show it here and maybe run it next time :
configure xorg
The resolution we need is just missing, but the daft way of installing below really works !!:
Install an /etc/X11/xorg.conf (if the install did not do that already) :
| aticonfig | |
|---|---|
It might that aticonfig is what you need from the catalyst install , please comment on this the next time you install !
Probably best to reboot here. So far we still have a working server with ati drivers, still in the wrong resolution. Here is where i lost track so pay more attention next install. It is going to look weird but I now did this 3 times and it always goes like this :
- become root, needed for most steps.
- stop lightdm so you can startx stopx manually : /etc/init.d/lightdm stop
- add the mode line for 2560x1024 /etc/X11/xorg.conf (see below)
- startx, the screen becomes garbled with a pink square in the left top and hangs
- do ALT F2, ALT F1, this switches to another console and back, where you get a prompt again.
- comment out the modeline you just added in /etc/X11/xorg.conf again.
- stopx: startx : working !! ??
- restart lightdm again
This last setup is now running, even after reboot. The content of /etc/X11/xorg.conf is now :
If you reboot you startup in a high-res login screen from now on.
Note the AccelMethod line, this was added later. Hopefully it's a fix for the problem with cordova run browser. This command starts up a new chrome browser with you cordova app running inside, but every (about 10?) times it completely kills the Xorg server.
google-chrome
Skip this step as well, chromium-browser works without problem. But installing google-chrome might have other benefits (not known yet)
The chromium-browser package delivers a blue wheel and working browser, but flash is not working, at least not for google maps (youtube does work)
So i downloaded google-chrome from google instead. However that seems to hang on the dependency libappindicator1, and it is indeed uninstallable unless you add this line to /etc/apt/sources.list
| /etc/apt/sources.list | |
|---|---|
Don't ask, .. you still have to update and install that package by hand, because aptitude still attempts to remove the google-chrome package otherwise. What also seems to help (after the dpkg -i), is the -f or --fix-broken flag :
| fix broken | |
|---|---|
Also.. if you get the problem that xterm start to flicker while you have many chrome windows open, disable hardware acceleration in chrome :
| hardware acceleration | |
|---|---|
mount
I would try to start switching between two disks, to have at least a step back system whenever i fuck it up again. Of course some cleaning needs to be done each time but from now on i like to number the systems upwards each reinstall.
The first time was easy with a clean second disk (lsblk snippets)
So sdc is the new disk, sde1 is the fucked up disk with data intact. so it's mounted at /media/hoek1 for easy access. The second time around means cleaning up /media/hoek1 because it becomes the next system. After install it would look something like :
And.. so .. on. It would also work in sidestepping onto a new machine. Put the disk besides the main one in the new machine, and maybe afterwards put it back again for a second workstation.
mongodb
First note that we need mongo-org because the mongodb provided with jessie is 2.4 and we need 3d-sphere searches that are only available from 2-6 upwards.
If you have an older version with data, upgrading to 3.6 will fail starting up. You need to upgrade to 3.4 first..
You need to add an extra list file to get the package :
| mongodb | |
|---|---|
This is almost ok, but now the mongo client libraries will fail when you compile klopt code, so also do this to repair that :
| mongodb | |
|---|---|
Normally we would be done. But if you partitioned wrong like me :
| lsblk | |
|---|---|
Mongo won't start because :
So just do one partition because you only run out at the last moment.
keyboard shortcuts
Note
forever todo ?... make a script to set these ?
alt-space windows menu
Whenever you mistype the ALT and hit the space as well Ubuntu pop's up the window menu left-top. This is annoying to say the least. But it's not that easily found.
- The keyboard shortcuts don't mention these, they clearly don't show all shortcuts.
- This can be done in compiz-config, but that does not start up.
- So to see what's wrong start it up by hand, the executable is ccsm
- Python-gtk seems to not be installed, but don't bother trying to install it because the real problem is you changed to python3.
- I would really advise switching back to python2 for these hard to spot problems, just explicitly use python3 in the shebang !!
- or just to change the keyboard do 'update-alternatives --config python'
- now you can startup ccsm, but start it up from the menu, or as your user otherwise you are changing settings for root !!
- IT's in CompizConfig->general options->key bindings: window menu!
zfs
We need this for the virtualbox images, so this one first. add the jessie backports repo:
echo "deb http://ftp.debian.org/debian jessie-backports main contrib" >> /etc/apt/sources.list.d/backports.list
Now install the packages, they could be too many, but i installed these and it worked.
| install | |
|---|---|
This already imported my array, but if needed :
| zpool | |
|---|---|
Virtualbox
Virtualbox will complain about new versions, so just install the latest from their site : visit as before just do dpkg -i and fix-broken :
It's the easiest way.
Adding your old systems is the easiest when you just reconstruct it from the disks :
- New system, follow the usual steps
- at "Hard Disk" choose "Use an existing virtual hard disk file.
Of course whenever you install a system you will be urged to install the extensions.
vboxclient the virtualbox kernel service is not running
A sub-problem is that (i think that) iso images are prepared for use as a virtualbox client and this will backfire when it is NOT a guest but a hypervisor. So this message is shown in the hypervisor while virtualbox is not even installed.
Getting rid of this message is fixed with this :
| clean install | |
|---|---|
reboot and see :
installation
As a reminder and to create an install script. (see lang project for a start for that)
handy
| useful tools | |
|---|---|
development
see next chapter for default-jdk
| development tools | |
|---|---|
networking
| networking tools | |
|---|---|
fun
| fun | |
|---|---|
video: (glx tools)
| glx | |
|---|---|
web server with php5
| obsolete | |
|---|---|
nodejs
There is a nodejs package in debian but it's version number is v0.10.X where the nodejs site is up to v7, or v6 with Long Time Support. So i chose their LTS version and advised way of installing it :
| install | |
|---|---|
Not only do you have version v.6.9 , you can also run node instead of only nodejs.
oracle java 8
It seems that google recommends this for android development, also this is java 8. That's why this one occurs before the next section for openjdk-7.
There is only an .rpm file on the oracle site, so the only download left is the tar.gz file, but this requires you to do a lot of update-alternatives commands to install the new code. You could leave it at java, javac and jar, but what about jarsigner, javap .. etc.
The easiest way to install this, by using the ubuntu xenial repository which does have a .deb install.
During the last install phase you will see how many update-alternatives commands you would have had to do manually ;)
java (open-)jdk
Could be a part of development but needs some more explanation. First the choice openjdk or oracle jdk, a brief search led to the fact that there is not that much of a difference anymore, and since i love open source and this can be installed with apt-get : openjdk it is.
Jessie (debian 8.0) makes java7 the default, it also comes equipped with openjdk7-jre. Besides that, android sticks with 7 for now, i see no real reason to go with 8 until later. So 7 it is ...
Last time i encountered errors using aptitude, so this helped :
| open jdk | |
|---|---|
So ... 1 alternative please :
tomcat 8
Since tomcat 9 is now the main focus of development, and tomcat 8.5 is widely noted as the 'current' version, i chose that one. It supports java from 7 upwards so that will also work. When you run apt-get install it will show what packages it suggests before asking to continue. The --install-suggests option takes those in as well.
| tomcat | |
|---|---|
Also add some user credentials into /etc/tomcat8/tomcat-users.xml, pleeaasseeee do not use that password. Generate a firm but mildly rememberable one (because you might want to use the admin interface) with : pwqgen
I added all roles i could find here, maybe some refinement is in order ?
| roles | |
|---|---|
And then :
| restart | |
|---|---|
If you have maven projects that auto-deploy to tomcat you need a section like this in /etc/maven/settings.xml, look in your pom.xml how the id should be named.
| pom.xml | |
|---|---|
ssh id
It is probably best to change the identity of ssh once in a while. But it is installed on numerous locations and it might not be that moment right now. Note that is very tempting to copy your old key into the new location, since there is no id_rsa pair in .ssh . You have to generate it manually:
| generate key pair | |
|---|---|
Still this first time i will log how many times you have to re-install the key:
- bitbucket.org, fairly easy to add new key : profile -> bitbucket settings -> ssh keys
sudo
Why ? since i have root access, well mainly for shorthand lines like : sudo apt-get install meld. If sudo is installed there is probably a sudo group, so :
| prepare sudo | |
|---|---|
Now not that you have to login again for it to take effect, a new bash shell, or new xterm is not enough !! ssh localhost is the shortest i found. You will be needing to do that every new xterm, so i would advise to logout X completely and login again.
home
| git | |
|---|---|
This will put the tree in a separate subdirectory ~/home which is not actually a bad thing since otherwise it would overwrite rather important files like .bashrc or .vimrc. But there is no alternative since git won't allow you to clone into an non-empty directory. So i would advise to compare all files that are clashing. mostly only :
Maybe other files if this is not a new install. If you checked and merged, copy all into place
cp will skip hidden files so run this command :
| copy with hidden files | |
|---|---|
android studio
Seems to run a lot of x86 executables, for instance creating an emulator will fail on making the sdcard. If you look at the mksdcard tool it is an ELF-32 executable, so do :
| android studio | |
|---|---|
glxinfo
I wrecked my machine the first time doing this, but it's worth keeping this info around.
Don't do any of this unless you need to.
This is what the havoc was all about. Needed for the emulator for android-studio, glxinfo was a test to see if things were installed correctly. :
The errors are not good... but if you do as they suggest it reveals some more:
Now i tried a lot of things to get rid of these errors, but halfway i got stuck in a loop with the package glx-diversion which could neither be installed nor removed.
It was a recursive dependency between these packages :
- glx-alternative-mesa
- glx-diversions
- gfx-alternative-fglrx
And all was in
In the working result version all three were installed, and the one i tried to installed is not. So it seems we are back to the beginning again. But in the situation where i finally got aptitude to behave again (lots of remove --purge, re-install again etc) i had a segmentation fault on glxinfo. After doing these steps :
| mesa | |
|---|---|
So todo : what is the shortest and correct way of doing this ?!!
printer
The easiest way to install this can be found at brother support
- agree license
- download driver install tool
- gunzip
- chmod +x
- run the script.
- the printer name is : MFC-J4620DW
Try cups at visit to see if it works.
fx 9590 ECC hardware problem
I had this a while a go with my first FX 9590 processor, informatique refused to refund my money so i bought another one at megekko.
Never buy anything at informatique again !!
But also this second one entered the same problems after about a year running smoothly. My current strategy is to see if the core performance boost setting is causing the problem. The error is some variant of this :
If you query the processor, you will get these speeds from /proc/cpuinfo, or lscpu
| /proc/cpuinfo | |
|---|---|
You can view the actual speed with CPB turned on with :
| actual speed | |
|---|---|
It will show this when doing nothing :
But startup some program the takes cpu, like alien-arena, and it will soon change to :
You may see it change now and then, but the opening screen of alien-arena is enough to max it out.
This is the default with cpb turned on in the BIOS. Actually in the BIOS it says that the speed is 5.000 MHz, but it maxes out on 4.000.
Here are some settings and the speeds detected :