Project Zebra: We are not shipping your machine! (Xubuntu testing) ►
◄ Living with the Windows 10 interface
This entry is part of my Project Zebra series covering migration to Linux for personal computing use.
There's been a few small oversights in my theming, one of which is tooltips. In accordance with many online tutorials, first we deal with traditional apps such as Geany, Pinta, etc.
~/.gtkrc-2.0
style "my-tooltips" { xthickness = 4 ythickness = 4 bg[NORMAL] = "#FFFFDF" fg[NORMAL] = "#000000" } widget "gtk-tooltip*" style "my-tooltips"
But much of Xfce is GTK3 now, so we can adapt from the default Adwaita theme.
~/.config/gtk-3.0/gtk.css
tooltip { padding: 0; border-radius: 0; box-shadow: none; text-shadow: none; border: 1px solid black; }
tooltip.background { background-color: #ffffdf; background-clip: padding-box; }
tooltip decoration { background-color: transparent; }
tooltip * { padding: 0; background-color: transparent; color: black; border-color: black; }
Annoyingly Chromium seems to use white on black with any theme, unless you choose GTK. Other Chromium-based browsers don't seem to.
Whilst I was in ~/.config/gtk-3.0/gtk.css I also crudely styled Whisker Menu with the assistance of GTK+ Inspector
#whiskermenu-button { border: 2px #f0f0f0 solid; border-right: 2px #505050 solid; border-bottom: 2px #505050 solid; font-size: 1.2em; font-weight: bold; }
#whiskermenu-button image, #whiskermenu-button label { padding: 0; }
#whiskermenu-button label { margin: -1px 4px 1px -4px; color: #404040; }
#whiskermenu-button:active, #whiskermenu-button:checked { border: 2px grey inset; }
#whiskermenu-button:active image, #whiskermenu-button:checked image { margin: 2px -2px -2px 2px; padding: 0; }
#whiskermenu-button:active label, #whiskermenu-button:checked label { margin: 1px 2px -1px -2px; padding: 0; }
On a side issue, I had a look at the assets of the 4deb window manager theme I'm using, and it doesn't look like making a GTK3 theme would be too difficult with another simple base theme to hack on.
Xfce in general lets you mix and match (theme separately) lots of desktop elements. This can make the Settings dialogue feel a bit disjointed, but it gives plenty of scope for customisation. There's an overview of different elements here: https://forum.xfce.org/viewtopic.php?id=8787
I also stumbled on https://www.marutan.net/themes.php – a RISC OS theme for Xfce! It's the flecked design rather than the default OS but you might like to copy to ~/.local/share/themes and enjoy for a minute or two, or (as I might if time permits) use it as a learning point for Xfce themes.
Going further off-topic; as a quick visit to http://www.iconbar.com/ will confirm, RISC OS is alive, and it looks like recent (i.e. last half a decade) IT developments such as the Raspberry Pi and 3D printing have given companies such as http://www.ident-online.co.uk/computer/ a route to make it usable (for certain values of usable) as a daily driver rather than just retro fun, and it's priced at about fifty quid all-in. I'm kind of curious, but if I'm honest don't really need the distraction. The 2012 news: https://www.raspberrypi.org/blog/risc-os-for-raspberry-pi/ plus a slightly more recent article http://www.zdnet.com/article/raspberry-pi-hands-on-with-risc-os/ and a short tour of RISC OS by J Andrew Suter if you're wondering what I'm on about: https://docs.google.com/viewer?a=v&pid=sites&srcid=ZGVmYXVsdGRvbWFpbnxidXJuZ2F0ZWhvdXNlfGd4OjE1NTlkNjMwNDg4MTQ0NDI or a nice visual on https://distrowatch.com/table.php?distribution=risc
My main box is a ThinkCentre M92p, and has some "quirks" when it comes to USB devices, which are hardware rather than software and happened under Windows as well. The main two are:
- External DVD writers work only if not plugged into a USB 3.0 extension cable
- USB keyboards need to be plugged into the USB 2.0 port to work with the BIOS
I have secure boot turned off and no boot partition, and am not sure what BIOS/UEFI version is in place or whether it'd make any difference, but I don't update firmware as a general rule. It does sound like Lenovo had some shoddy business practices with this model and UEFI; at one point (2012?) they were hardcoding checks for Windows or RHEL – https://www.phoronix.com/scan.php?page=news_item&px=mtiyotg
So my current device strategy is;
USB 2.0 w/ mini 3-port USB 2.0 hub: - mouse - keyboard - separate hub hosting - wireless adapter - wireless keyboard adapter - printer - UPS status - USB sound card USB 3.0 back #1: - NAS USB 3.0 back #2: - free w/ USB 3.0 cable for portable HDDs or flash drives, or for using scanner USB 3.0 front #1 w/ mini 3-port USB 2.0 hub for convenience: - power for speakers USB 3.0 front #2 w/ mini 3-port USB 2.0 hub for convenience: - DVD writer
I'll try to sort out another powered USB 3.0 hub at some point as the last one seemed to gradually lose working ports, but this lets me free up ports easily as and when required.
Another random tangent… if you were wondering how to run a script and then safely close the Terminal window you'd used to launch it, it's a fairly short sequence of:
1. Append & to run it in the background, so something like ./script.sh &
2. Use the 'jobs' command, followed by the 'disown' command
https://www.maketecheasier.com/run-bash-commands-background-linux/
The hard drive in Mom's laptop (Win7 era Advent Modena / 320 WD Scorpio Blue) turned out to be failing rather than it just being Win10 being shit with the latest 2Gb update, so given that its uses are web browsing and that's about it it seemed a good time to move it off Windows, which had a long string of problems with updates because it doesn't spend enough time on to deal with the sheer volume. Twice-yearly OS sized updates also don't serve the majority of casual users well.
It took very little time to stick another drive in, live boot and then install Linux Mint 18.3 Xfce (which is a long term support release good until 2021), change a handful of settings and install Chrome and a Sudoku app. Mint's own mintstick app to prepare a USB drive proved to be quite handy.
This article has some decent factual writeups and happen to mention a lot of software I like: https://wiki.installgentoo.com/index.php/List_of_recommended_GNU/Linux_software
And the rest of the site is interesting for honest advice on eg importing stuff from China if you can ignore the chan origins and casual racism, and for articles like https://wiki.installgentoo.com/index.php/GNU/Linux_ricing Note: it's not really anything to do with Gentoo – http://knowyourmeme.com/memes/install-gentoo
As yet another aside on a perennial topic, it turns out that Opera still goes out of its way to break fixing ffmpeg.so so I'm currently using a copy from https://repo.herecura.eu/herecura/x86_64/ but as much as it's nice to have another Chrome alternative I'm not sure it's viable on this platform.
It's annoying that Reddit discussions get archived and still show in Google results – eg this one https://www.reddit.com/r/audiophile/comments/2uipvv/any_linux_users_whats_your_music_player_anything/ suggesting there are issues with Foobar under Wine. There might have been ages ago, but it's been perfect for me in year-and-a-half I've been using it. Runs WinAmp DSP plugins too.
I installed uGet as a download manager and tweaked a classic (2004) Squarefree bookmarklet to get the URLs of links on a page matching a keyword – https://www.squarefree.com/bookmarklets/
javascript:(function(){var x,n,nD,z,i; function htmlEscape(s){s=s.replace(/&/g,'&');s=s.replace(/>/g,'>');s=s.replace(/</g,'<');return s;} function attrQuoteEscape(s){s=s.replace(/&/g,'&'); s=s.replace(/"/g, '"');return s;} x=prompt("show links with this word/phrase in link text or target url (leave blank to list all links):", ""); n=0; if(x!=null) { x=x.toLowerCase(); nD = window.open().document; nD.writeln('<html><head><title>Links containing "'+htmlEscape(x)+'"</title><base target="_blank"></head><body>'); nD.writeln('Links on <a href="'+attrQuoteEscape(location.href)+'">'+htmlEscape(location.href)+'</a><br> with link text or target url containing "' + htmlEscape(x) + '"<br><hr>'); z = document.links; for (i = 0; i < z.length; ++i) { if ((z[i].innerHTML && z[i].innerHTML.toLowerCase().indexOf(x) != -1) || z[i].href.toLowerCase().indexOf(x) != -1 ) { nD.writeln('<a href="' + attrQuoteEscape(z[i].href) + '">' + attrQuoteEscape(z[i].href) + '</a><br>'); } } nD.writeln('<hr></body></html>'); nD.close(); } })();
Tweaked not-quite-fullscreen VLC to wmctrl -r :ACTIVE: -e 0,129,0,1669,1012
I also wanted a "show desktop" launcher for the panel, but on a sub-menu, so the existing widget wasn't quite the right solution. Using wmctrl to send a signal to the window manager is better.
http://www.webupd8.org/2009/10/show-desktop-applet-for-docky-gnome-do.html
#!/bin/sh if wmctrl -m | grep "mode: ON"; then exec wmctrl -k off else exec wmctrl -k on fi
And I think that's enough random notes to publish as an entry.
💬 Comments are off, but you can use the mail form to contact or see the about page for social media links.