Tag Archives: gentoo

New toy – ASRock J3455-ITX

Part because of a mistake and part for fun, I purchased an ASRock J3455-ITX.  I tried to boot a couple different OSs without much luck, I could not get CoreOS to boot or even a Gentoo LiveCD. Granted, it is low power and slow, so it might have been my impatience. Finally, I tried a Gentoo minimal install DVD and it booted, so in the spirit of making something easy much harder this would be yet another Gentoo build.

System make up.

The system make up by the time it was done:

  • ASRock J3455-ITX Intel Quad-Core Processor J3455 (up to 2.3GHz) Mini ITX Motherboard/CPU Combo (Newegg)
  • Silverstone 0.8mm Steel Body Tek Acrylic Front Panel for Mini-ITX Media Center/HTPC Case Cases ML05B (Amazon)
  • SilverStone Technology 300W SFX Form Factor 80 PLUS BRONZE Power Supply with +12V single rail, Active PFC (ST30SF) (Amazon)
  • Timetec Hynix IC 16GB Kit (2x8GB) DDR3L 1866MHz PC3-14900 Unbuffered Non-ECC 1.35V CL13 2Rx8 Dual Rank 204 Pin SODIMM Apple Memory RAM Module Upgrade (16GB Kit (2x8GB)) (Amazon) Returning to Amazon
  • G.SKILL 8GB (2 x 4GB) 204-Pin DDR3 SO-DIMM DDR3 1333 (PC3 10666) Laptop Memory Model F3-10666CL9D-8GBSQ (Newegg)
  • SAMSUNG 850 EVO 2.5″ 250GB SATA III 3D NAND Internal Solid State Drive (SSD) MZ-75E250B/AM (Had this from an old system)

BIOS Version J3455-ITX, BIOS P1.60 01/16/2018 – Out of the box BIOS version.

BIOS Update

Here is the catch, on the ASRock site it lists 1.40 then jumps to 1.70 as a bridge before installing 1.80. I tried the 1.70 from a fat32 USB and the board would not recognize the firmware. So screw it, I just went to 1.80 and it worked. I have to assume the 1.60 is already a bridge to 1.80.

Cooling

Probably will not put a fan in because the passive cooling seems to work well.  There are two fan connections on the board (CPU and chassis) and settings in the board configuration. Compiling webkit, which is a grind, the temps 30+ minutes into compiling webkit:

coretemp-isa-0000
Adapter: ISA adapter
Package id 0: +131.0°F (high = +221.0°F, crit = +221.0°F)
Core 0: +131.0°F (high = +221.0°F, crit = +221.0°F)
Core 1: +131.0°F (high = +221.0°F, crit = +221.0°F)
Core 2: +129.2°F (high = +221.0°F, crit = +221.0°F)
Core 3: +129.2°F (high = +221.0°F, crit = +221.0°F)
acpitz-virtual-0
Adapter: Virtual device
temp1: +132.8°F (crit = +212.0°F)

Memory

This is a real BS point. ASRock and a number of other board manufacturers advertise 16 Gig of RAM usable. I read all over the internet this thing can run with 16 Gig. I gave it a try and everything SEEMED to work.

I gave it a shot (see above in System makeup) using 16 Gig (8×2) DDR3L 1866 RAM. Like I already said, it seemed to work, but under heavy loads I got random kernel panics (Kernel 4.18.20), usually SMP NOPTI and sometimes even more spectacular blow ups. I was thinking bad RAM module? Anyway, I pulled a module and ran 8 Gig with the result that I cannot kill it with any load. A quick check of the Intel J3455 Datasheet says only an 8 Gig MAX:

In ASRock’s Memory Support List, only DDR3 Crucial 1600 16GB CT204864BF160B is listed for this configuration. So, in conclusion it might run with 16 Gig, but not always. I do not care, I really only need 8Gig and can return the other RAM to Amazon, saving some money.

EDIT:  I have since read that the board might not be automatically powering the RAM or the RAM is not quite right. A possible fix might be to take the board out if AUTO and increasing the voltage or lowering the speed. I have not tried this …

Hardware Error

This is my real hard spot with this board:

mce: [Hardware Error]: CPU 0: Machine Check: 0 Bank 4: e600000000020408
mce: [Hardware Error]: TSC 0 ADDR fef13b80
mce: [Hardware Error]: PROCESSOR 0:506c9 TIME 1543272637 SOCKET 0 APIC 0 microcode 32

This seems to be common on all the ASRock boards and a lengthy Redhat (here) post gets to the source. The most interesting:

Tony Luck 2017-08-02 13:15:00 EDT
I wrote a trivial EFI program to dump the machine check banks and put it on a USB stick a \EFI\BOOT\BOOTX64.EFI, then booted that USB stick.

The machine check was already logged at this point.

So Linux (and grub boot loader) aren’t involved. Tracking with someone who supports BIOS on this platform now.

So, this is some kind of issue with the BIOS and during boot it picks up on the already existing error. Intel NUC Kits also had this problem, but fixed it in the BIOS. It seems to be a problem that probably will not go away, but does not cause issues.

 

 

avahi-daemon chroot failed

Another annoying journal error:

avahi-daemon[301]: chroot.c: open() failed: No such file or directory
avahi-daemon[285]: Failed to open /etc/resolv.conf: Invalid argument

Copy avahi-daemon.service from /lib/systemd/system to /etc/systemd/system. Edit /etc/systemd/system/avahi-daemon.service and add the “After=systemd-resolved.service” line like below and restart. This should result in no error:

avahi-daemon[364]: Successfully called chroot().
avahi-daemon[364]: Successfully dropped remaining capabilities.


# This file is part of avahi.
#
# avahi is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as
# published by the Free Software Foundation; either version 2 of the
# License, or (at your option) any later version.
#
# avahi is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
# License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with avahi; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
# USA.

[Unit]
Description=Avahi mDNS/DNS-SD Stack
After=systemd-resolved.service
Requires=avahi-daemon.socket

[Service]
Type=dbus
BusName=org.freedesktop.Avahi
ExecStart=/usr/sbin/avahi-daemon -s
ExecReload=/usr/sbin/avahi-daemon -r
NotifyAccess=main

[Install]
WantedBy=multi-user.target
Also=avahi-daemon.socket
Alias=dbus-org.freedesktop.Avahi.service

Virtual Box 5.0 in Portage!

I guess just in time for Windows 10???

vb5

emerge –unmerge -p virtualbox

Same old catch if you want the BIOS compiled then Open Watcom is needed.  To be specific, I have had to use Open Watcom 1.9.  The emerge output if OW is not found:

>>> Source prepared.
>>> Configuring source in /var/tmp/portage/app-emulation/virtualbox-5.0.0/work/VirtualBox-5.0.0 …
Checking for environment: Determined build machine: linux.amd64, target machine: linux.amd64, OK.
Checking for kBuild: found, OK.
Checking for gcc: found version 4.8.4, OK.
Checking for Open Watcom:
** Open Watcom was not found!
Checking for iasl: found version 20130117, OK.
Checking for xslt: found, OK.

After installing Open Watcom and “export WATCOM=/usr//bin/watcom19”, running emerge should result in:

>>> Source prepared.
>>> Configuring source in /var/tmp/portage/app-emulation/virtualbox-5.0.0/work/VirtualBox-5.0.0 …
Checking for environment: Determined build machine: linux.amd64, target machine: linux.amd64, OK.
Checking for kBuild: found, OK.
Checking for gcc: found version 4.8.4, OK.
Checking for Open Watcom: found version 1.9, OK.
Checking for iasl: found version 20130117, OK.
Checking for xslt: found, OK.

Also had to “emerge -v virtualbox-extpack-oracle app-emulation/virtualbox-additions” separately.

 

Gnome 3.16

Classes are finally out for summer and it is time for catch up.  Still, I had time to cause undue stress in my life.  I decided to do what I had promised myself I would not do again, install a new version of Gnome before it was stable in portage.  Anyway, the upgrade to Gnome 3.16 was not without pains along the way, but it is done.

gnome3_16

The Dreaded Gentoo emerge -e @world

Not something I take lightly, nor is it something I look forward to doing.  In Gentoo the emerge “-e” means rebuild all packages installed on the system that portage has recorded.  A quick ‘equery -l “*”‘ will list all packages installed.

So why do I do this every year or so?  Just to make sure I have not messed something up over time.  It is not something I look forward to because the time from start to finish is measured not in hours, but days.  For example, it took my i7 laptop (1,400+) packages with SSDs and plenty of ram 24+ hours to finish.  However, in the end I was confident the system was in good shape.

So here are my tips at making this painful experience a little less painful.

1.  I start by getting the system in the best shape possible:

emerge -v –update –deep –newuse –with-bdeps=y –autounmask-write @world

If needed:

emerge @preserved-rebuild

then:

emerge –depclean

If you are paranoid careful then do:

python-updater

perl-cleaner –all

2. Next:  cd /var/log/portage/elog

You should find the file summary.log.  Rename it or delete it, whatever suites you.  Once the big emerge starts, all the messages will be logged to a new summary.log file.

2. Execute:   emerge -pve –keep-going @world

Note the “p” for pretend.  If everything is good then it should tell you that the Oracle Java packages need to be downloaded.  This is a good time to download them (I have Jre and jdk packages installed), move them to portage/distfiles, and do not forget:

chown portage:portage <file> 

to the files.  Make a mental note of the total number of packages to build.

3. Start by executing:  emerge -ve –keep-going @world

Why the keep-going? Because if everything is good after step 1 then any issues should be minor and this keeps from having to start the process from the beginning.

Now all there is to do is wait and hope for the best which usually does not help.  As the emerge progresses with each new package the typical package number X of Y (total) being processed.  So if you start with a total of 1,400 packages and later notice emerge outputting 20 of 800 then there has been a problem which has been skipped (note:  the –keep-going option).  Go check the summary.log file to find what the problem might have been.  The best part is that you should be able to fix it while the emerge -e keeps churning along.

Enjoy!

 

Gnome OCR and Other Stuff

I was looking for an OCR app to use with Gnome/Gentoo and decided to give OCRFeeder a try.  It is available in the an overlay which makes it easier to keep up with for updates.  It is found in the anyc overlay.

layman -a anyc  then  emerge ocrfeeder (have to unmask)

WTF!!! A lot of rebuilds and new packages … that means probable trouble.  Yep, mplayer2 will not compile.  One of the updates was for ffmpeg and that had me worried that I had run into my first libav–ffmpeg blowup because I use ffmpeg rather than the mandated libav.

So, I unmask mplayer2-2.0_p20131009-r1 and still get the error:

libmpdemux/aviheader.c: In function ‘read_avi_header’:
libmpdemux/aviheader.c:600:8: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(&magic, 6, 1, fp);
^
libmpdemux/aviheader.c:605:8: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(&priv->idx_size, sizeof(priv->idx_size), 1, fp);
^
libmpdemux/aviheader.c:616:10: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
fread(idx, sizeof(AVIINDEXENTRY), 1, fp);
^
libmpdemux/demuxer.c:48:2: error: #error MP_INPUT_BUFFER_PADDING_SIZE is too small!
#error MP_INPUT_BUFFER_PADDING_SIZE is too small!
^
Makefile:536: recipe for target ‘libmpdemux/demuxer.o’ failed

Well, I try emerge @preserve-rebuild without mplayer2 and now I get this for /vlc-2.1.2:

checking for AVCODEC… yes
configure: error: libavcodec versions 56 and later are not supported yet.

Yep, vlc is giving me issues.  Now I am on the slippery slide of getting off the Gentoo path, so I up the stakes, I unmask media-video/vlc-2.1.5-r1 and try again.  You might ask why jump up to 2.15-r1 and I would reply that if I am going to blow things up badly then I might as well go big.

Great, now k3b errors on compile!  Unmask k3b-2.0.3-r1 and emerge without problems.  Okay, so where am I now?  Yep, back to this mplayer2 issue:

libmpdemux/demuxer.c:48:2: error: #error MP_INPUT_BUFFER_PADDING_SIZE is too small!
#error MP_INPUT_BUFFER_PADDING_SIZE is too small!

I don’t feel like going to battle for mplayer because I only use vlc or others, so a quick:

equery d mplayer2

results in:

  * These packages depend on mplayer2:
media-video/smplayer-14.9.0-r1 (media-video/mplayer2[libass,png,X])

So:

emerge –unmerge mplayer2 smplayer 

Now what was I doing?  Yep, OCRFeeder install.  Well, that went okay finally, but OCR engines have to be installed.  I installed gocr, ocrad, cuneiform, and tesseract.  OCRFeeder lets the user select the engine.

Another day in Gentoo world ….

 

Tracker Thrashing at Gnome Boot

Use Gnome?  What is Tracker?  Well, here is the official description:

Tracker is a search engine, search tool and metadata storage system.

It allows you to find the proverbial needle in your computer’s haystack as well as providing a one stop solution to the organisation, storage and categorisation of your data.

Source:  Tracker Wiki

I would add that Tracker kills my system at boot.  Maybe not kill, but brings it to a crawl.  I have thought about disabling it, but sometimes I like the Gnome desktop search.  My fix for the boot issue:

/etc/xdg/autostart
 
littleturd autostart # ls -l tracker*
-rw-r--r-- 1 root root 524 Dec 30 21:33 tracker-extract.desktop
-rw-r--r-- 1 root root 532 Dec 30 21:43 tracker-miner-fs.desktop
-rw-r--r-- 1 root root 597 Dec 30 21:44 tracker-store.desktop

Now change the following in each of the above files:

X-GNOME-Autostart-enabled=false

Of course, resetting things helped too.

/etc/xdg/autostart
tracker-control -r   :Kill all Tracker processes and remove all databases
tracker-control -s   :Starts miners (which indirectly starts tracker-store too)

Last, don’t be dumb like me who mounts his NAS in his home directory, know what directories tracker is set to scan!

Another day, another kernel and that VMware problem

Yep, another day, a new kernel:

Linux littleturd 3.19.0-gentoo-mgreene #1 SMP PREEMPT Tue Feb 10 19:08:38 EST 2015 x86_64 Intel(R) Core(TM) i5-2320 CPU @ 3.00GHz GenuineIntel GNU/Linux

What does going from 3.18.x to 3.19.0 mean for me?  The damn Vmware modules don’t compile, so it is off to remember how to fix it.  Of course the old trusty Arch page has the answer: 3.19 kernels

Every time I have to do this I have to ask myself, “Why the hell do I have VMware installed?”  The truth is that I installed it to run my NAS firmware to try something, but that was a long time ago.  So once again I should just remove it … but what if I need it?

 

 

Bluefish 2.2.7 on Gentoo

Gentoo finally updated to Bluefish 2.2.6, so I know the latest version must be out which is 2.2.7.  In case you do not know:

Bluefish is a powerful editor targeted towards programmers and webdevelopers, with many options to write websites, scripts and programming code. Bluefish supports many programming and markup languages.

Unfortunately, I already use 2.2.6 and want 2.2.7. Just to make things easy, I download and unarchive then use the Gentoo configure to setup everything:

./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --disable-dependency-tracking --libdir=/usr/lib64 --docdir=/usr/share/doc/bluefish-2.2.6 --disable-dependency-tracking --disable-update-databases --disable-xml-catalog-update --enable-nls --enable-spell-check --enable-python

Follow that by make and, if everything works, make install.  Now the latest version of Bluefish is installed.