Monday, June 5, 2023

Ubuntu 23.04

Welcome to my personal Ubuntu 23.04 setup guide.

In this guide, I will share the GNOME extensions that I personally find useful, along with some minor tweaks that enhance my Ubuntu experience.   

My list of GNOME extensions

One of the benefits of using the GNOME shell as the default graphical shell on Ubuntu is that we now have the ability to use GNOME extensions, which can modify the behaviour of the GNOME shell. However, it is important to be aware that these extensions are not developed by the official GNOME team but by third-party developers. From my own experience, using such extensions can sometimes lead to an unbootable system. Nevertheless, I have found a list of extensions that are compatible with the latest version of GNOME shell and they are quite useful.

But first, if you want to get GNOME extensions, then you have to install the following:
sudo apt install gnome-shell-extensions
and
sudo apt install chrome-gnome-shell
Now you are ready to install my recommended list of extensions: 

  • SomaFM internet radio
    • This small extension adds a SomaFM internet radio player to the top panel of the Ubuntu desktop and it includes the ability to select favorites.
    • To install, first open the terminal an denter the following command to install the required packages:
      sudo apt install python3-gi gstreamer1.0-tools gir1.2-gstreamer-1.0 gir1.2-gst-plugins-base-1.0 gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-plugins-bad gstreamer1.0-libav gstreamer1.0-fdkaac git
    • Then use these commands:
      git clone 'http://github.com/alireza6677/somafm-radio-gnome-ext'
      cd somafm-radio-gnome-ext
      cp -r 'SomaFm-Radio@alireza6677.gmail.com' ~/.local/share/gnome-shell/extensions/SomaFm-Radio@alireza6677.gmail.com
    • Then manually edit the "metadata.json"-file:
      gnome-text-editor ~/.local/share/gnome-shell/extensions/SomaFm-Radio\@alireza6677.gmail.com/metadata.json
      • Add the proper shell-version (e.g. 44)
      • Save
    • Finally, log out of your session, use the keyborad shortcut "alt+F2" and type in "r" and press Enter, or simply reboot your system
    • Activate the extension on the extensions page for the SomaFM internet radio
    • Enjoy
  • Todo.txt
    • Create and manage a TODO list in the top panel
  • Frippery Move Clock
    • It simply moves the clock/date/calendar to the right in the top panel. I have gotten used to have all of my apps to the right of the top panel
  • OpenWeather
    • A simple weather app embedded in the top panel, highly configurable
  • Status Area Horizontal Spacing
    • There is a lot of horizontal spacing between the icons in the top panel, this extensions reduces the space between each app, which is neat
  • Show Desktop Button
    • Adds a show desktop button in the upper left corner of the screen
    • I usually change the indicator position to be "far left" in the extension settings
  • Pomodoro
    • A productivity tool for time-boxing yourself
    • First install these packages through the terminal (sudo dpkg -i gnome-shell-pomodoro[...]):
    • Install the following dependencies:
      sudo apt install meson gettext valac pkg-config desktop-file-utils appstream-util libappstream-glib-dev libglib2.0-dev gsettings-desktop-schemas-dev gobject-introspection libgirepository1.0-dev libsqlite3-dev libgom-1.0-dev libgstreamer1.0-dev libgtk-3-dev libcanberra-dev libpeas-dev libjson-glib-dev gnome-shell-pomodoro
    • Then relog or reboot
    • Then go and enable the extension: Pomodoro
      • If it is not working, then you installed the dependencies first, fix this with: sudo apt install gnome-shell-pomodoro

Minor tweaks

Gnome tweaks

Two things slightly annoy me about the default behavior of the dash to dock extension, the first being that when I re-select an item on the dock then the item doesn't minimize, which can by fixed through the terminal:
gsettings set org.gnome.shell.extensions.dash-to-dock click-action 'minimize'
The other issue I have with the dock, is that I can't cycle through a list of opened items with my scroll-wheel, e.g. if I have opened multiple folders or browsers. This can also be fixed through the terminal:
gsettings set org.gnome.shell.extensions.dash-to-dock scroll-action 'cycle-windows'
Then I also like the following tweak, where I enable the weekdate in the desktop calendar:
gsettings set org.gnome.desktop.calendar show-weekdate true
And finally I also like to enable the weekday in the gnome clock:
gsettings set org.gnome.desktop.interface clock-show-weekday true

Right-click create untitled document

I love to have the ability to right-click anywhere I like, and be able to create a new file. This behaviour was removed in Ubuntu 18.04. We can reenable this ability, by adding a new template, like this:
touch ~/Templates/"Untitled Document"

Sunday, January 24, 2021

Ubuntu 20.10

 

This is my personal Ubuntu 20.10 setup guide, it includes GNOME extensions that I like and minor tweaks. 

My list of GNOME extensions

One of the benefits of using the GNOME shell as the default graphical shell on Ubuntu, is that we now have the ability to use GNOME extensions, which can modify the behaviour of the GNOME shell - BUT be aware that the extensions are not developed by the official GNOME team, but by third party developers, which I have experience myself, can lead to a unbootable system. I have however found a list of extensions that both are compatible with the latest version of GNOME shell and they are quite useful.

But first, if you want to get GNOME extensions, then you have to install the following:
sudo apt install gnome-shell-extensions
and
sudo apt install chrome-gnome-shell
Now you are ready to install my recommended list of extensions: 


  • SomaFM internet radio
    • A small extensions that adds a SomaFM internet radio player in the top panel of the desktop, it includes the ability to select favorites.
    • First install these packages: 
      • sudo apt-get install python3-gi gstreamer1.0-tools gir1.2-gstreamer-1.0 gir1.2-gst-plugins-base-1.0 gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-plugins-bad gstreamer1.0-libav gstreamer1.0-fdkaac git 
    • Then use these commands:
      • git clone 'http://github.com/alireza6677/somafm-radio-gnome-ext'
      • cd somafm-radio-gnome-ext
      • cp -r 'SomaFm-Radio@alireza6677.gmail.com' ~/.local/share/gnome-shell/extensions/SomaFm-Radio@alireza6677.gmail.com
    • Then manually edit the "metadata.json"-file:
      • gnome-text-editor ~/.local/share/gnome-shell/extensions/SomaFm-Radio\@alireza6677.gmail.com/metadata.json
        • Add the proper shell-version (e.g. 44)
        • Save
    • Finally logout, use "alt+F2" and the r-command or reboot
    • Activate the extension on the extensions page for the SomaFM internet radio
    • Enjoy
  • Todo.txt
    • Create and manage a TODO list in the top panel
  • Remove Dropdown Arrows
    • It removes the dropdown arrows from apps that have that in the top panel.
  • Frippery Move Clock
    • It simply moves the clock/date/calendar to the right in the top panel. I have gotten used to have all of my apps to the right of the top panel.
  • Hide Activities Button
    • I hides the activities button. I find this button quite useless, as I hit the ‘super-key’ when I want to see my activities.
  • OpenWeather
    • A simple weather app embedded in the top panel, highly configurable.
  • Status Area Horizontal Spacing
    • There is a lot of horizontal spacing between the icons in the top panel, this extensions reduces the space between each app, which is neat.
  • TopIcons Plus
    • Used for displaying the icon of legacy apps in the top panel.
  • Show Desktop Button
    • Adds a show desktop button in the upper left corner of the screen.
  • Refresh Wifi Connections
    • Adds a WiFi refresh button to the manual network selection in the top panel.
  • ShellTile
    • A tiling window extension, which allows you to snap an application to quarters of screen, very handy if you are using applications which do not allow this behavior, such as Discord.
      • Minor tweak: Disable 'grouping edge tiling' of windows in settings
  • Pomodoro
    • A productivity tool for time-boxing yourself
    • First install these packages through the terminal (sudo dpkg -i gnome-shell-pomodoro[...]):
    • Install the following dependencies:
      • sudo apt-get install meson gettext valac pkg-config desktop-file-utils appstream-util libappstream-glib-dev libglib2.0-dev gsettings-desktop-schemas-dev gobject-introspection libgirepository1.0-dev libsqlite3-dev libgom-1.0-dev libgstreamer1.0-dev libgtk-3-dev libcanberra-dev libpeas-dev libjson-glib-dev gnome-shell-pomodoro
    • Then relog or reboot
    • Then go and enable the extension: Pomodoro

Minor tweaks

Gnome tweaks

Two things slightly annoy me about the default behavior of the dash to dock extension, the first being that when I re-select an item on the dock then the item doesn't minimize, which can by fixed through the terminal:
gsettings set org.gnome.shell.extensions.dash-to-dock click-action 'minimize'
The other issue I have with the dock, is that I can't cycle through a list of opened items with my scroll-wheel, e.g. if I have opened multiple folders or browsers. This can also be fixed through the terminal:
gsettings set org.gnome.shell.extensions.dash-to-dock scroll-action 'cycle-windows'

Then I also like the following tweak, where I enable the weekdate in the desktop calendar:
gsettings set org.gnome.desktop.calendar show-weekdate true

Right-click create untitled document

I love to have the ability to right-click anywhere I like, and be able to create a new file. This behaviour was removed in Ubuntu 18.04. We can reenable this ability, by adding a new template, like this:
touch ~/Templates/"Untitled Document"

Legacy applications as startup applications

While I really enjoy the TopIcons Plus GNOME extension, there is seemingly a visibility issue when adding a legacy application to the list of startup application of the session (gnome-session-properties), this is due to the legacy applications starting before the GNOME extension, this can be fixed by adding a slight delay to the app in question, like this:
sh -c "sleep 10; exec clementine"
And if I want it to start the application to tray, then I will use:
sh -c "sleep 10; exec hexchat --minimize=2"
telegram-desktop -startintray

DVD codecs

First ensure that we have added the multiverse repository
sudo add-apt-repository multiverse
Then install the package
sudo apt-get install libdvd-pkg
Lastly reconfigure the package
sudo dpkg-reconfigure libdvd-pkg
Relog or reboot if it is not already working.

Handle lid switch

If you like me like to close your laptop lid, but do not want your machine to go into hibernation, then you will need to edit the following file: logind.conf
sudo gedit /etc/systemd/logind.conf
Change "#HandleLidSwitch=hibernate" (around line 24) to "HandleLidSwitch=ignore" and be sure to remove the hashtag: #
Save and lastly you need to reboot the systemd service:
systemctl restart systemd-logind.service

Firefox hardware acceleration

Firefox does not come with hardware acceleration enabled per default, so you might experience some screen tearing as I did. You can test if you have it or not, by watching this youtube video: https://www.youtube.com/watch?v=0RvIbVmCOxg

In order to fix this, you must enable hardware acceleration in the browser. Open a new window and type this in the addressbar:
about:config
Then search after this:
layers.acceleration.force-enabled
Change it from false to true. Close Firefox and start it again. You should now have eliminated your screen tearning. Feel free to watch the youtube video again.

SyncMaster913n

If you are using a old panel like me, then you might run into some issues, such as Ubuntu not correctly identifying your screens resolution (1024x768 vs 1280x1024) nor brightness (1 (too much) vs 0.85). We can fix our issues with xrandr.

Screen resolution fix
Firstly we need to identify our mode. Run the following command in the terminal:
cvt 1280 1024
Notice the Modeline, it should look something like this:
Modeline "1280x1024_60.00"  109.00  1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync
Note: If you specify the refresh rate (_60.00), then you will run into a wall with multiple games. For example Minecraft will complain about "No OpenGL context found in the current thread" on Minecraft version 1.12.2 (openjdk version "1.8.0_x"). So remove that part.

Now create the mode without the refresh rate with xrandr (change the "mode" with the setting current for your screen, see the line above):
xrandr --newmode "1280x1024" 109.00  1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync
Then add the mode with xrandr:
xrandr --addmode DVI-0 1280x1024"
Go to settings and check that you can change to your new resolution. If it works, then we want to automatically apply this change on boot. Open your gnome session properties by using the following command in the terminal:
gnome-session-properties
Then finally add a new item in the gnome session properties, give it a name of your choice (e.g. Resolution fix) and add the following code as the command (again remember to use your own mode):
/bin/bash -c "sleep 10 && xrandr --newmode "1280x1024_60.00" 109.00  1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync && xrandr --addmode DVI-0 1280x1024_60.00"
Note: We are letting our script sleep for 10 seconds, so our session is fully started before we apply our fix.

Brightness fix
Firstly, if you are using Night Light, then that will negate everything we are doing, so either go ahead and disable that or don't apply this fix. Run the following command in the terminal:
xrandr --output DVI-0 --brightness 0.85
If it works, then we are ready to add this on boot as well (a good test, is looking at a word document, page seperation). Open your gnome session properties by using the following command in the terminal:
gnome-session-properties
Then add a new item, give it a name of your choice (e.g. Brightness fix) and then add the following code as the command:
/bin/bash -c "xrandr --output DVI-0 --brightness 0.85"
Note: We are letting our script sleep for 15 seconds, so our session is fully started before we apply our fix. And in order to let the first xrandr command finish.

Friday, April 3, 2020

Ubuntu 20.04 LTS

This is my personal Ubuntu 20.04 LTS setup guide, it includes my initial impressions, programs I like, GNOME extensions and minor tweaks.

Initial impressions:

Going to edit this later on.

My list of programs

Going to edit this later on.

My list of GNOME extensions

One of the benefits of using the GNOME shell as the default graphical shell on Ubuntu, is that we now have the ability to use GNOME extensions, which can modify the behaviour of the GNOME shell - BUT be aware that the extensions are not developed by the official GNOME team, but by third party developers, which I have experience myself, can lead to a unbootable system. I have however found a list of extensions that both are compatible with the latest version of GNOME shell and they are quite useful.

But first, if you want to get GNOME extensions, then you have to install the following:
sudo apt install gnome-shell-extensions
and
sudo apt install chrome-gnome-shell
Now you are ready to install my recommended list of extensions: 


  • SomaFM internet radio
    • A small extensions that adds a SomaFM internet radio player in the top panel of the desktop, it includes the ability to select favorites.
  • Todo.txt
    • Create and manage a TODO list in the top panel
  • Remove Dropdown Arrows
    • It removes the dropdown arrows from apps that have that in the top panel.
  • Frippery Move Clock
    • It simply moves the clock/date/calendar to the right in the top panel. I have gotten used to have all of my apps to the right of the top panel.
  • Hide Activities Button
    • I hides the activities button. I find this button quite useless, as I hit the ‘super-key’ when I want to see my activities.
  • OpenWeather
    • A simple weather app embedded in the top panel, highly configurable.
  • Status Area Horizontal Spacing
    • There is a lot of horizontal spacing between the icons in the top panel, this extensions reduces the space between each app, which is neat.
  • TopIcons Plus
    • Used for displaying the icon of legacy apps in the top panel.
  • Show Desktop Button
    • Adds a show desktop button in the upper left corner of the screen.
  • Refresh Wifi Connections
    • Adds a WiFi refresh button to the manual network selection in the top panel.
  • ShellTile
    • A tiling window extension, which allows you to snap an application to quarters of screen, very handy if you are using applications which do not allow this behavior, such as Discord.
      • Minor tweak: Disable 'grouping edge tiling' of windows in settings

Minor tweaks

Gnome tweaks

Two things slightly annoy me about the default behavior of the dash to dock extension, the first being that when I re-select an item on the dock then the item doesn't minimize, which can by fixed through the terminal:
gsettings set org.gnome.shell.extensions.dash-to-dock click-action 'minimize'
The other issue I have with the dock, is that I can't cycle through a list of opened items with my scroll-wheel, e.g. if I have opened multiple folders or browsers. This can also be fixed through the terminal:
gsettings set org.gnome.shell.extensions.dash-to-dock scroll-action 'cycle-windows'

Right-click create untitled document

I love to have the ability to right-click anywhere I like, and be able to create a new file. This behaviour was removed in Ubuntu 18.04. We can reenable this ability, by adding a new template, like this:
touch ~/Templates/"Untitled Document"

Legacy applications as startup applications

While I really enjoy the TopIcons Plus GNOME extension, there is seemingly a visibility issue when adding a legacy application to the list of startup application of the session (gnome-session-properties), this is due to the legacy applications starting before the GNOME extension, this can be fixed by adding a slight delay to the app in question, like this:
sh -c "sleep 10; exec clementine"
And if I want it to start the application to tray, then I will use:
sh -c "sleep 10; exec hexchat --minimize=2"
telegram-desktop -startintray

Handle lid switch

If you like me like to close your laptop lid, but do not want your machine to go into hibernation, then you will need to edit the following file: logind.conf
sudo gedit /etc/systemd/logind.conf
Change "#HandleLidSwitch=hibernate" (around line 24) to "HandleLidSwitch=ignore" and be sure to remove the hashtag: #
Save and lastly you need to reboot the systemd service:
systemctl restart systemd-logind.service

Firefox hardware acceleration

Firefox does not come with hardware acceleration enabled per default, so you might experience some screen tearing as I did. You can test if you have it or not, by watching this youtube video: https://www.youtube.com/watch?v=0RvIbVmCOxg

In order to fix this, you must enable hardware acceleration in the browser. Open a new window and type this in the addressbar:
about:config
Then search after this:
layers.acceleration.force-enabled
Change it from false to true. Close Firefox and start it again. You should now have eliminated your screen tearning. Feel free to watch the youtube video again.

SyncMaster913n

If you are using a old panel like me, then you might run into some issues, such as Ubuntu not correctly identifying your screens resolution (1024x768 vs 1280x1024) nor brightness (1 (too much) vs 0.85). We can fix our issues with xrandr.

Screen resolution fix
Firstly we need to identify our mode. Run the following command in the terminal:
cvt 1280 1024
Notice the Modeline, it should look something like this:
Modeline "1280x1024_60.00"  109.00  1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync
Note: If you specify the refresh rate (_60.00), then you will run into a wall with multiple games. For example Minecraft will complain about "No OpenGL context found in the current thread" on Minecraft version 1.12.2 (openjdk version "1.8.0_x"). So remove that part.

Now create the mode without the refresh rate with xrandr (change the "mode" with the setting current for your screen, see the line above):
xrandr --newmode "1280x1024" 109.00  1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync
Then add the mode with xrandr:
xrandr --addmode DVI-0 1280x1024"
Go to settings and check that you can change to your new resolution. If it works, then we want to automatically apply this change on boot. Open your gnome session properties by using the following command in the terminal:
gnome-session-properties
Then finally add a new item in the gnome session properties, give it a name of your choice (e.g. Resolution fix) and add the following code as the command (again remember to use your own mode):
/bin/bash -c "sleep 10 && xrandr --newmode "1280x1024_60.00" 109.00  1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync && xrandr --addmode DVI-0 1280x1024_60.00"
Note: We are letting our script sleep for 10 seconds, so our session is fully started before we apply our fix.

Brightness fix
Firstly, if you are using Night Light, then that will negate everything we are doing, so either go ahead and disable that or don't apply this fix. Run the following command in the terminal:
xrandr --output DVI-0 --brightness 0.85
If it works, then we are ready to add this on boot as well (a good test, is looking at a word document, page seperation). Open your gnome session properties by using the following command in the terminal:
gnome-session-properties
Then add a new item, give it a name of your choice (e.g. Brightness fix) and then add the following code as the command:
/bin/bash -c "xrandr --output DVI-0 --brightness 0.85"
Note: We are letting our script sleep for 15 seconds, so our session is fully started before we apply our fix. And in order to let the first xrandr command finish.

Wednesday, January 30, 2019

Wolfenstein: Enemy Territory 2.60b on Ubuntu 18.04 (and 22.04)





If you are using 64-bit, then it is recommended to install the following file:
sudo apt-get install libglu1-mesa:i386 libSDL1.2debian:i386
You can download the game from the terminal using this command:
wget -c https://ftp.gwdg.de/pub/misc/ftp.idsoftware.com/idstuff/et/linux/et-linux-2.60.x86.run
And then we make the downloaded file executable:
wget -c https://ftp.gwdg.de/pub/misc/ftp.idsoftware.com/idstuff/et/linux/et-linux-2.60-update.x86.run
And then we make the downloaded file executable:
chmod +x et-linux-2.60.x86.run
chmod +x et-linux-2.60-update.x86.run
And we run the file with admin rights
sudo ./et-linux-2.60.x86.run
Now you should see a enemy territory icon in your menu .
sudo ./et-linux-2.60-update.x86.run
And now your game is up to date.

Enjoy

If you have sound problems

A lot of Ubuntu users can't get the old classic Wolfenstein ET to work with sound, but I have good news - I know a fix that works every time.

First of all we need to go fetch the file we need, run this command in the terminal:

wget -q -O - http://nullkey.kapsi.fi/et-sdl-sound/et-sdl-sound.gz | gzip -d > et-sdl-sound && chmod a+x et-sdl-sound
(IF you can't download the file due to the server being down, then you can get my modified version from here)(Still remember to use "chmod a+x et-sdl-sound")

then we need to edit the file from the old alsa sound system to our new pulse sound system:

sudo gedit /home/yourusername/et-sdl-sound

Go to line 40 and the change the line from this:

SDL_AUDIODRIVER="alsa"

to this:
SDL_AUDIODRIVER="pulse"
 and also add this:
LIBSDL="/usr/lib/i386-linux-gnu/libSDL-1.2.so.0.11.4"
save the file and close and then you need to make a symbol link, so you can play the game:

/home/yourusername//et-sdl-sound

If you can't type in the game (keyboard issue)

If you can't type inside the game, then you need to disable "shifted keys". Edit the /.etwolf/etmain/etconfig.cfg-file and change "seta in_shiftedkeys" from "0" to "1" (line 365).

If you want to change the screen resolution

Wolfenstein ET is not exactly a new game and you might want to change the resolution so it fits your screen.

You will need to create a new file and name it autoexec.cfg and it should contain the following:

set name ^$Playername
bind "i" dropclip
bind "k" kill
bind "rightarrow" "vsay Thanks"
bind "," say_team ^3Please Wait...^4Bar is Recharging!
bind "leftarrow" say ^WMy^1 HP^W is now [s]
bind "downarrow" say Thanks for the ^1Revive! [r]
bind "uparrow" vsay Welcome
bind "h" toggle cg_draw2d
bind "p" toggle cg_atmosphericEffects
bind "m" vsay EnemyDisguised
bind "ins" vsay Thanks
bind "del" vsay Cheer
bind "home" vsay_team FollowMe
set cg_fov "120"
seta com_soundMegs "64"
seta snaps "40"
seta rate "25000" // was 16000
seta com_hunkMegs "250"
seta r_customwidth "1366"
seta r_customheight "768"
seta r_fullscreen "1"
seta r_mode "-1"
seta cg_drawFPS "1" //DISPLAY FRAMES PER SECOND
seta cg_drawGun "1" //DISPLAY SELECTED WEAPON
seta com_zoneMegs "64"
seta s_volume "0.9"
seta s_musicvolume "0"
seta s_khz "22"
seta s_bits "16"
seta s_channels "2"
vid_restart
Insert the above and also remember to change "Playername" to your playername in the game.

gedit ~/.etwolf/etmain/autoexec.cfg 

and you will also need to change a line in your playerfile to allow your user to use the custom screen resolution, do that with:

gedit ~/.etwolf/etmain/profiles/Playername/ 

If you don't have a profile yet, then open the game and make one. Change "seta r_mode" from the default value to "-1" save the file and close it.

That is it

I hope it works for you, enjoy.

Wednesday, May 2, 2018

Ubuntu 18.04 LTS

This is my personal Ubuntu 18.04 LTS setup guide, it includes my initial impressions, programs I like, GNOME extensions and minor tweaks.

Initial impressions:

Ubuntu 18.04 LTS offers a new installation type: Minimal install. This new type avoids the bloatware that normally comes with Ubuntu, such as the office suite LibreOffice, shotwell, transmission, thunderbird etc. I quite like this new mode, as I normally either manually remove the apps I don’t use, or I simply leave them on the drive, thus wasted space.

Recently I have been using GNOME 16.04 LTS as my primary OS, empowered by the dash to dock GNOME extension, which coincidentally offers a look and feel that is pretty much identical to the new Ubuntu LTS. This is mainly due to the fact that Canonical, the company behind Ubuntu, decided to discontinue their custom graphical shell Unity and adopted the GNOME shell, which is the graphical shell that have been used on the native GNOME desktop environment since version 3, which was released back in 2011. They also added a custom version of dash to dock GNOME extension to make it look and feel more like the discontinued Unity application launcher. So on a personal note: nothing new under the sun.

Ubuntu also had plans to change the default display server from X11 to Wayland in this latest LTS, alas that did not happen, but they did however include the Wayland option from the cog on the login screen - the new goal is to make it the default display server in the next LTS - in Ubuntu 20.04 LTS.

My list of programs

I have a long list of program I simply adore and a few new ones I am trying out.

Because I used the Ubuntu Minimal install, I didn’t get the default music manager Rhythmbox, and I wanted to try something new, so I have instead installed Clementine in order to see if it is as good as people make it up to be, I was sold by the Dropbox and Google Drive media streaming capabilities. I am using Hexchat as my IRC client, which I use primarily to communicate to the open source project I am a part of. I am using Discord as my gaming chat client, Slack as my work chat client and Telegram as my private chat client. I am currently using the Chrome Browser for everyday browsing, and the Tor browser for private browsing. I am using VNC Viewer as a tool to get remove desktop access over my Raspberry Pi 3. I have also installed a pomodoro performance timer, which I can enable when I need to stay focused. And to stay focused while I type, I use FocusWriter. I use Visual Studio Code, the insider build, as my default lightweight text editor, and I also use it for .Net development, where I am current developing a ASP.NET Core MVC project for my Raspberry Pi 3. Currently I use Cake as my build, test and deployment tool, mainly due to the nice metrics it offers of each phase. I use Git as a version control tool and GitLab as my global free private repository of choice. I use Open Broadcaster Software as my default screen recorder tool.

I also have latest stable version of Wine installed, which allows me to play windows games, as I simply adore the turn based strategy game Heroes of Might and Magic 3 Complete (so it includes all of the expansion packs - which can be found for a steal on GOG.com (remember to download BOTH files and that the location is not the default one)) - I also use the non-official fan made HD addon, where I am offered a greater resolution, game bug fixes and a very functional online multiplayer lobby and a ingame online chat client with the ability to add friends - quite awesome!

My list of GNOME extensions

One of the benefits of using the GNOME shell as the default graphical shell on Ubuntu, is that we now have the ability to use GNOME extensions, which can modify the behaviour of the GNOME shell - BUT be aware that the extensions are not developed by the official GNOME team, but by third party developers, which I have experience myself, can lead to a unbootable system. I have however found a list of extensions that both are compatible with the latest version of GNOME shell and they are quite useful.

But first, if you want to get GNOME extensions, then you have to install the following:
sudo apt install gnome-shell-extensions
and
sudo apt install chrome-gnome-shell
Now you are ready to install my recommended list of extensions: 


  • SomaFM internet radio
    • A small extensions that adds a SomaFM internet radio player in the top panel of the desktop, it includes the ability to select favorites.
  • Todo.txt
    • Create and manage a TODO list in the top panel
      • Not working on Ubuntu 19.10
  • Extensions
    • An overview of the extensions installed, with the ability to enable and disable and edit the settings of the individual extensions - this can also be achieved from the GNOME tweak tool, but I find it more handy.
  • Remove Dropdown Arrows
    • It removes the dropdown arrows from apps that have that in the top panel.
  • Frippery Move Clock
    • It simply moves the clock/date/calendar to the right in the top panel. I have gotten used to have all of my apps to the right of the top panel.
  • Hide Activities Button
    • I hides the activities button. I find this button quite useless, as I hit the ‘super-key’ when I want to see my activities.
  • Google Earth Wallpaper
    • An awesome extensions which auto-shuffles through selected locations on earth and displays them as your desktop background. You are able to enable a time interval, if you should download them etc.
  • OpenWeather
    • A simple weather app embedded in the top panel, highly configurable.
  • Status Area Horizontal Spacing
    • There is a lot of horizontal spacing between the icons in the top panel, this extensions reduces the space between each app, which is neat.
  • TopIcons Plus
    • Used for displaying the icon of legacy apps in the top panel.
  • Show Desktop Button
    • Adds a show desktop button in the upper left corner of the screen.
      • Ubuntu 19.04 fix: sed -i 's/global.screen/global.workspace_manager/g' ~/.local/share/gnome-shell/extensions/show-desktop-button@amivaleo/extension.js
  • Refresh Wifi Connections
    • Adds a WiFi refresh button to the manual network selection in the top panel.
  • ShellTile
    • A tiling window extension, which allows you to snap an application to quarters of screen, very handy if you are using applications which do not allow this behavior, such as Discord.
      • Minor tweak: Disable 'grouping edge tiling' of windows in settings

Minor tweaks

Gnome tweaks

Two things slightly annoy me about the default behavior of the dash to dock extension, the first being that when I re-select an item on the dock then the item doesn't minimize, which can by fixed through the terminal:
gsettings set org.gnome.shell.extensions.dash-to-dock click-action 'minimize'
The other issue I have with the dock, is that I can't cycle through a list of opened items with my scroll-wheel, e.g. if I have opened multiple folders or browsers. This can also be fixed through the terminal:
gsettings set org.gnome.shell.extensions.dash-to-dock scroll-action 'cycle-windows'

Right-click create untitled document

I love to have the ability to right-click anywhere I like, and be able to create a new file. This behaviour was removed in Ubuntu 18.04. We can reenable this ability, by adding a new template, like this:
touch ~/Templates/"Untitled Document"

Legacy applications as startup applications

While I really enjoy the TopIcons Plus GNOME extension, there is seemingly a visibility issue when adding a legacy application to the list of startup application of the session (gnome-session-properties), this is due to the legacy applications starting before the GNOME extension, this can be fixed by adding a slight delay to the app in question, like this:
sh -c "sleep 10; exec clementine"
And if I want it to start the application to tray, then I will use:
sh -c "sleep 10; exec hexchat --minimize=2"
telegram-desktop -startintray

Handle lid switch

If you like me like to close your laptop lid, but do not want your machine to go into hibernation, then you will need to edit the following file: logind.conf
sudo gedit /etc/systemd/logind.conf
Change "#HandleLidSwitch=hibernate" (around line 24) to "HandleLidSwitch=ignore" and be sure to remove the hashtag: #
Save and lastly you need to reboot the systemd service:
systemctl restart systemd-logind.service

XPS 15 9570

You might experience static noise from your speakers when there is no sound playing. Use the following command to fix that issue:
sudo echo -e '\n# Disable snd-hda-intel power saving\noptions snd-hda-intel power_save=0 power_save_controller=N\n' |  sudo tee -a /etc/modprobe.d/alsa-base.conf

Friday, May 23, 2014

Ubuntu 14.04


Essential files
It is important to make sure that the system is up-to-date before trying to install new packages.

sudo apt-get update && sudo apt-get upgrade
sudo apt-get install ubuntu-restricted-extras xchat gftp vlc wine gimp p7zip-full ntfs-config gparted openjdk-6-jre icedtea-netx icedtea6-plugin kolourpaint4 cheese ktorrent -y
Recommended Games
sudo apt-get install frozen-bubble nexuiz supertuxkart freedink-engine neverball fillets-ng tmw -y
Nvidia - Getting the graphic card to work

There have been some problems with the proprietary nvidia driver, to make it work you should install the following, unless you are using a Optimus enabled card, then use the guide below.
sudo apt-get install linux-source
sudo apt-get install linux-headers-generic
sudo apt-get install nvidia-current-updates
Nvidia - Getting the graphic card to work (Optimus)

It works out of the box in the latest version of Ubuntu, but you might want to change from the Nouveau driver (open source) to the latest Nvidia driver (proprietary, tested). You can do that by clicking super and searching after additional drivers.

You can switch between the Intel and Nvidia card from the nvidia xserver settings under "Prime profiles". You can find the nvidia settings menu by clicking "super" and searching after it.

Recommended applications

Dropbox - It is a cloud storage with 2GB free space.
Skype - Allows the user to make voice and video calls and chat over the internet
Desura - A linux alternative to the windows based Steam client.
I can recommend the open source version called Desurium

sudo add-apt-repository ppa:makson96/desurium-stable
sudo apt-get update
sudo apt-get install desurium

Steam -  The official steam client is now working nativly on Linux and offers a ton of great games, it is easier to download from the homepage if you don't have a ubuntu account.

DVD codecs

Some DVDs come with landcode restrictions, to make sure you can play all of your DVDs, then you should do the following:

sudo rm /etc/apt/sources.list.d/medibuntu.list
curl ftp://ftp.videolan.org/pub/debian/videolan-apt.asc | sudo apt-key add -
echo "deb ftp://ftp.videolan.org/pub/debian/stable ./" | sudo tee /etc/apt/sources.list.d/libdvdcss.list
sudo apt-get update
sudo apt-get install libdvdcss2

Get Netflix

In order to get netflix to work in firefox, you will need to install pipelight. (silverlight for linux)
sudo apt-add-repository ppa:pipelight/stable
sudo apt-get update
sudo apt-get install pipelight-multi
sudo pipelight-plugin --enable silverlight
 Then download this user agent overrider and set your browser version as internet explorer 11: https://addons.mozilla.org/en-US/firefox/addon/user-agent-overrider/ 

Get Texmaker
When installing texmaker, then you will need to install texlive-full as well to get all of the dependencies installed:
sudo apt-get install texlive-full texmaker

Backspace action in Nautilus

If you want to enable Nautilus backspace action, then you need to open the nautilus accels file
sudo gedit ~/.config/nautilus/accels
and manually add the line at the very end (without ; ), like this:
(gtk_accel_path "/ShellActions/Up" "BackSpace")
save and then use: killall nautilus