Monday 12 August 2013

openSUSE 13.1 Milestone 4, GNOME live ISO

Some Juicy Tidbits
Here are some points to note before taking a look at "M4".
  • openSUSE 13.1 is expected to be released around November 2013.
  • openSUSE 13.1 will be called "Bottle". Yes, it is "weird".
  • openSUSE 13.1 will probably feature GNOME 3.10
  • openSUSE 13.1 Live ISO features GNOME Version 3.9.1
  • openSUSE 13.1 will replace GStreamer 0.10 with GStreamer 1.0. This can have huge impact on openSUSE / GNOME as multimedia playback, Nautilus preview and many applications depend on GStreamer framework.
  • openSUSE 13.1 is expected to drop sysvinit completely and move to systemd completely.
  • openSUSE 13.1 will feature a new reborn YaST with a Ruby back-end instead of YCP and the project is progressing well and milestone 4 YaST will be powered by Ruby.
  • openSUSE 13.1 M4 Live images written onto USBs using imagewriter supports data persistence ( Hybrid ISO ) across reboots.
  • You can access, read and write contents from Hard disk to Live ISO session and vice versa
Live ISO Preparation
Download Live ISO
 The openSUSE 13.1 Milestone 4, GNOME live ISO (64 bit ) was downloaded from the developer page using aria2 client which makes use of Metalink technology. Metalink can deliver very fast download speeds since clients support multiple connections, to multiple mirrors, automatically. In addition, it can do automatic error detection and correction.
Verify ISO
The md5 associated to the ISO was downloaded and the ISO was verified using md5sum command. Ensure that both the ISO and md5 files are in the same folder and run the command as shown below. If you get a "OK" after execution, it indicates that the ISO is not corrupted.
$md5sum -c openSUSE-Factory-GNOME-Live-Build0652-x86_64.iso.md5
openSUSE-Factory-GNOME-Live-Build0652-x86_64.iso: OK
Write ISO onto USB
 After verifying the ISO I used SUSE Studio Image Writer to write the ISO onto a blank USB / Flash / Pen / Thumb drive. Imagewriter is available in openSUSE repos. It is also usable on Windows and other Linux distributions like Fedora, Red Hat (RHEL) and Mandriva. The Linux versions can be downloaded from this page.
GNOME Live ISO Overview/Review
The default desktop is no different from GNOME 3.0 and minimalistic but it does have a right click functionality which allows one to :-
  • Change Desktop settings (gnome-control-center)
  • Change  wallpaper
Curiously, the much hated, "Universal Access" settings has been removed from the top panel.
openSUSE 13.1 Milestone 4, GNOME live ISO Default Desktop
  openSUSE 13.1, M4 features GNOME Version 3.9.1 and openSUSE 13.1 will be called "Bottle" . Here is a screenshot of GNOME settings "Details" which can be invoked using command "gnome-control-center" and navigating to "Details".
The Details application can be used to:-
  • View System info like openSUSE and GNOME versions, System architecture etc.
  • Set default applications for mail, browser, calendar, video, audio and images.
  • Set default actions for various removable media like CD, DVD, USB etc.
 No major changes were noticed in Nautilus and the preview feature works.
openSUSE 13.1 Milestone 4, GNOME live ISO Nautilus Preview
 Tweak tool (gnome-tweak-tool) has minimal changes when compared to GNOME 3.6. It now includes facility to customize the wallpaper settings like Stretch, Center, Scale, Span, Zoom and None.
openSUSE 13.1 Milestone 4, GNOME live ISO Gnome Tweak
  The "Activities" application window has undergone major changes. The applications are no longer grouped under various types like Accessories, Games, Graphics, Internet etc.. There is a button/slider which can be used to switch between full list of applications and recently used applications as shown below.
openSUSE 13.1 Milestone 4, GNOME live ISO Shell Activities
Though applications are no longer classified into types, two new type of application categorization/grouping have emerged in GNOME 3.9.1 namely  "Sundry" and "Utilities". Clicking on these application type/group opens a kind of pop up window revealing applications under those categories. The following screenshot shows applications under "Sundry" Category.
openSUSE 13.1 Milestone 4, GNOME live ISO Sundry And Utilities
 The Application search functionality has been improved in Activities window and the search results appear in an orderly fashion and are grouped appropriately.
openSUSE 13.1 Milestone 4, GNOME live ISO Search
GNOME Control Center Improvements
  The Control Center has undergone major upgrades and the number of "configurable" items has been increased drastically. Some of them are described below.
 The Activities based search can be easily customized through Search Settings to allow/disallow searching for Documents, Contacts, Files and passwords
openSUSE 13.1 Milestone 4, GNOME live ISO Search Settings
The Privacy Settings can be used to activate automatic screen locking, setting up of cleaning Temporary files, Remove user name from Top panel / bar etc.
openSUSE 13.1 Milestone 4, GNOME live ISO Privacy Settings
The "Users" setting now has a button which on clicking shows a User's Login history.
openSUSE 13.1 Milestone 4, GNOME live ISO User Login History
 Firefox plays html5 videos very well. The video is from Anime "Shingeki no kyojin".
openSUSE 13.1 Milestone 4, GNOME live ISO HTML5 Video Shingeki No Kyojin
Enabling GNOME Shell Classic
Install GNOME Shell Classic
 I use zypper(command line based package manager) to install the package named gnome-shell-classic and the package gets installed successfully as shown below.
$sudo zypper install gnome-shell-classic
openSUSE 13.1 Milestone 4, GNOME live ISO zypper gnome shell classic
Activate GNOME Shell Classic
 Open Shell Activities(left win key) and locate YaST and then open /etc/sysconfig Editor. sysconfig Editor can be used to set various system level settings. In sysconfig navigate to  Desktop > Window manager > DEFAULT_WM and change it's value from "gnome" to "gnome-classic" as shown below and save it. After logout and login GNOME classic will get applied/enabled.
openSUSE 13.1 Milestone 4, GNOME live ISO etc sysconfig
GNOME Classic Overview
 GNOME Classic restores the classic GNOME 2.X desktop on GNOME Shell. You can see the following changes:-
  • Main menu and Places menu are seen in top panel.
  • Icons are seen on desktop.
  • Time is moved right hand side of panel.
  • Bottom Panel has an application switcher to show show and switch between opened applications.
  • Classic Alt + Tab behaviour is restored.
 Default Screen for GNOME classic or GNOME 2.X desktop
openSUSE 13.1 Milestone 4, GNOME live ISO Classic Desktop
GNOME Main menu as seen on GNOME classic
openSUSE 13.1 Milestone 4, GNOME live ISO Main Menu
Classic Alt+Tab behaviour
openSUSE 13.1 Milestone 4, GNOME live ISO Alt Tab
Shortcomings of M4 Live ISO
  • GTK YaST works but YaST installer is broken. The workaround is to use ncurses version of YaST or zypper
  • The LIVE ISO is a bit laggy.

Wednesday 10 July 2013

30 Years of “Hello, World”

Nice Post  from another blog:-
30 Years of “Hello, World”: I recently took a vacation the same week as the 4th of July and had lots of time to reflect upon my career to date. It was a little shocking...

Saturday 1 June 2013

Pleasant Open document format surprise

 The other day, when i asked for some details about outlets from my telephone / cellphone provider by email they replied back to me and sent an attachment (spreadsheet) in ods format which was a pleasant surprise.
 In the "past" I have only seen proprietary formats like .xls, .doc, .ppt in my emails as attachments. I used to tear my hair out when I saw haphazard tables and overflowing text whenever I opened "word" documents in LibreOffice and OpenOffice. The less said about opening Excel with "macros" in LibreOffice / OpenOffice the better. Guess, those days of excruciating pain are finally over and we can all move towards a bright future where data is shared in Open document formats.
 Three cheers ! for the silent revolution brought about by LibreOffice / OpenOffice / OASIS and co.

Sunday 12 May 2013

Razor-qt desktop on openSUSE 12.3

Razor-qt
Razor-qt is desktop which a KDE-ish
  • highly configurable,
  • easy-to-use,
  • light weight(low hardware requirements),
  • fast desktop environment based on Qt.
Razor-qt cosists of various components:-
  • Panel -you can add plugins, behave like GNOME 2.X applets
  • Desktop with icons support
  • Application launcher(razor-runner)
  • Settings (Configuration center)
  • Sessions
 Razor-qt works with various WMs, but Openbox seems to be the preferred window manager.
Installation:-
 I have openSUSE 12.3/ GNOME 3.6 installed, the following procedure was used to install Razor-qt.
Pre-installation:-
 First i turned-off Autologin , created "new" user and used this new user for logging into Razor-qt. For details see User Management on GNOME 3.X
Installation using YaST
Add repo
Add the following additional repo using YaST:-
http://download.opensuse.org/repositories/X11:/QtDesktop/openSUSE_12.3/
Install Packages
Install the following packages using YaST Installer
  • Base packages
    • razorqt
    • pavucontrol -simple GTK based "mixer" for PulseAudio
  • Additional packages
    • qtdesktop - Will pull in various "Must have" Qt applications :-
      • juffed - Simple tabbed text editor
      • nomacs - Lightweight image viewer
      • qlipper - Lightweight clipboard history
      • qterminal - Advanced terminal emulator
      • quiterss - QuiteRSS - RSS/Atom aggregator
      • qupzilla - Web browser based on WebKit core
      • qxkb - Qt keyboard layout switcher
      • qpdfview - Tabbed PDF Viewer
      • screengrab - Screen grabber
      • clementine - A cross-platform Music Player based on Amarok 1
      • smplayer - Complete Frontend for MPlayer
      • speedcrunch - A calculator with history display
      • vlc - multimedia player for various audio and video formats
      • qbittorrent - A Bittorrent Client built with C++ / Qt4
Installation using zypper
Add repo
open comman launcher(Alt+F2) and open terminal using command ("gnome-terminal") and run following command:-
sudo zypper ar -c -f -n 'QtDesktop_openSUSE_12.3' http://download.opensuse.org/repositories/X11:/QtDesktop/openSUSE_12.3/ QtDesktop_openSUSE_12.3
Install Packages
Run in the following command in terminal to install the desktop
sudo zypper in razorqt pavucontrol qtdesktop
Razor-qt Overview
 At first time login, Razor-qt provides a dialogue box with a list of window managers and I chose Openbox
Razor-qt choose Window manager,Openbox
The default desktop looks conservative with a touch of gloss. The analog clock adds a nice touch to the desktop.
Razor-qt default desktop
We see a traditional main menu (Alt+F1)
Razor-qt Main Menu
 Lot of plugins / applets can be added to panel by right clicking on it. We can see Application Menu, Quick Launch, Task Manager, Colour Picker, Lock Tool, CPU Usage tool, Network Usage tool, Show Desktop tool etc.. added in the screenshot below
Razor-qt Panel
 Each plugin on panel can be customised. Task Manager can be customised to make opened applications look like squares instead of rectangles.
Razor-qt Task Manager Customize
  Desktop icons / items can be added by creating launchers inside ~/Desktop folder by using commands like "gnome-desktop-item-edit 1.desktop"
 Razor-qt Create Desktop Icons
  Razor runner makes launching applications keyboard friendly (Alt+F2).
 Razor-qt Razor Runner Application Launcher
Razor Configuration Center
 The Razor Settings applet / plugin on the panel is very useful in configuring the desktop. "Razor Session Configurator" can be used to make applications like Artha(Dictionary tool) to start along with the desktop.
Razor-qt Razor Session Configurator
 To change themes we need to use both "Openbox Configuration Manager" as well as "Razor Appearance Configuration" .
Razor-qt Change Theme
 "Razor Shortcut Configuration" can be used to create keyboard shortcuts to launch applications easily using keyboard.
Razor-qt Keyboard Shortcuts
Qt Applications
 SpeedCrunch is a cool calculator which has lot of inbuilt formulae
Razor-qt Speedcrunch
 qBittorrent makes a powerful torrent downloader. qpdfview is a cool lightweight pdf viewer with "tabs" support.
qBittorrent and qpdfview
 JuffEd is a good text editor and NoMacs does a good job as image viewer
JuffEd and NoMacs
 QupZilla makes a wonderful webkit based browser and has variety of features like AdBlock, RSS reader, Cookie Manager and web inspector. It also has a good collection of inbuilt themes.
QupZilla
 SMPlayer and VLC (Audio & Video players) play almost anything you throw at them.
SMPlayer and VLC

Saturday 4 May 2013

Changing mouse settings from command line

 To configure mouse settings from command line we can use an utility called "xinput". The manual for xinput defines it as a utility to list available input devices, query information about a device and change input device settings. i.e. xinput can be used to configure a variety of input devices like mouse, keyboard etc...
List Connected Devices
 On a GNOME 3.x desktop we can open command launcher (Alt+F2) and then use the command "gnome-terminal" to open terminal.
 To list all the devices connected to a machine we can run the following command in terminal xinput --list. In the following screenshot you can find that an optical mouse is connected to the machine and assigned a "device id 8".
List input Devices
Enable and Disable the device
 Sometimes we don't want mouse movement to bring up a machine from sleep. To disable the input device(mouse), we find the device id by listing all devices as shown above. After finding the device id of the mouse (8) we can run the following command in terminal to disable the mouse xinput --disable 8. Similarly to enable mouse again we can run the command xinput --enable 8. To make things more convenient we can set keyboard shortcuts for these commands as shown below
Keyboard shortcut disable enable mouse
Switch mouse buttons from right handed to left handed
 I for one use, "left handed" mouse settings . I find that on some "light weight" desktops, GUI based mouse settings are often not available which makes changing mouse settings a hassle. xinput comes to the rescue in these cases. To get the default mouse button mapping the following command can be used :- xinput get-button-map 8. To change the default mapping from right to left you can use the command xinput set-button-map 8 3 2 1. The following screenshot shows the demo.
Change Mouse mapping
 The above setting made through terminal will last only for one login session but, we can "apply" this setting every time we login by plugging the relevant command into the ~/.profile file in "home" directory as shown below.
.profile file xinput

Sunday 28 April 2013

What is dconf editor, how is it useful ?

Dconf is
  • low-level configuration system whose main purpose is to provide a backend to GSettings on GNOME 3.X desktops.
  • dconf is a simple key-based configuration system. Keys exist in an unstructured database.
  • dconf system can be considered as a kind of replacement for gconf system which was used in GNOME 2.X series desktop.
  • dconf-editor is a Graphical Editor for Simple key-based configuration system which is dconf.
Install dconf Editor
Launch dconf Editor
  • To launch dconf Editor open command launcher (Alt+F2) and run command "dconf-editor".
    Alt + F2 ==> dconf-editor
  • Alternatively you can press left "Win" key or (Alt+F1) to open "Activities" and type "dconf" upon which you can see dconf Editor appearing grouped under "Applications".
dconf Editor Essentials
Find keys
 The various keys can be found by invoking search settings from top panel and then plugging in appropriate "search string" as shown below
dconf-editor Find Keys
 dconf Editor is a very useful configuration editing tool and the inner "workings" are as follows:-
  • All the settings are categorised broadly under Schemas.
  • All the Keys that logically belong together are grouped together under Schemas.
  • The various key's values can be changed by double clicking on them and entering new values. To save new settings we need to press return key .
  • To restore original values we can always use the "Set to default" button at the bottom of the tool.
dconf Editor Usage
The tool can be used for many purposes like:-
  • Changing preferences/settings for many native GNOME applications settings. Example:- Get Totem working again after crash by changing schema "org.gnome.totem"
  • Perform some advanced settings which is sometimes not possible to do from even the applications. It is possible to reduce inbox refresh time to 30 seconds in Evolution. In this case it is accomplished by changing schema "org.gnome.evolution.mail"
    Evolution interface allows minimum refresh rate of 1 minute
    Evolution set inbox refresh rate
    dconf Editor allows reduction of refresh rate to 30 seconds.
    dconf-editor Evolution set inbox 30 sec refresh rate
  • Change default directory where the screenshots are stored if "Print Screen" button is pressed. In this case schema that is modified is "org.gnome.gnome-screenshot"
    Print Screen default Save Folder
  • We can change mouse button modifier (Modifier to use for modified window click actions) from <SUPER> or "Win" key to <ALT>. You can use "Alt" key and click on any open window to "drag" it around. The schema to be changed in this case is "org.gnome.desktop.wm.preferences".
    dconf-editor mouse button modifier <Alt>
  • It can serve as a replacement / alternative for "gnome-tweak-tool" and "gnome-control-center". Most of the settings in Tweak tool are available / changed using dconf Editor.
  • Change mouse from left to right click by editing the schema "org.gnome.settings-daemon.peripherals.mouse" as shown below.
    dconf-editor left handed mouse button settings

Saturday 13 April 2013

Why should we install mozplugger on openSUSE 12.3, GNOME 3.6 ?

 MozPlugger is a generic Mozilla plug-in that allows the use of standard Linux programs as plug-ins for media types on the Internet. MozPlugger will help the Mozilla / Gecko based browsers to handle a variety of file formats like pdf, office formats (xls, xlsx, ppt, pptx, doc, docx), LibreOffice file formats etc. Without installing mozplugger we find that very few file types are present in "Helper Applications" window in both SeaMonkey and Firefox.
SeaMonkey with few content types in Helper Applications
SeaMonkey Before Mozplugger Installation
Firefox also shows only a few content types in Application preferences
Firefox Before Mozplugger Installation
When i try to open a sample xls file hosted online SeaMonkey tries to download and open it outside the browser.
SeaMonkey open with xls before mozplugger installation
Download and Install Mozplugger
Step 1:- First step would be to Configure Community Repositories in YaST 
Step 2 :- Before we proceed to download the rpms we need to understand what type of rpms we need. 32 bit Vs 64 bit OS architecture in Linux
Step 3 :- Since i use a 64bit OS I downloaded the following rpms
  • mozplugger-1.14.3-3.fc18.x86_64.rpm from link
  • mozilla-filesystem-1.9-8.fc18.x86_64.rpm from link
Step 4 :- I dumped these rpms into a directory and Converted the directory into a repository using YaST
Step 5 :- I open terminal (Alt+F2 ==> gnome-terminal) and install mozplugger using command "sudo zypper in mozplugger"
Post installation lot of content types are present in Helper Applications window
SeaMonkey Helper Applications After Mozplugger Installation
Post installation, I can open same xls "inside" SeaMonkey . LibreOffice opens the file in embedded mode inside the browser.
SeaMonkey LibreOffice opesn xls in embedded mode after mozplugger installation

Converting a Plain RPM Directory into a repository using YaST

 The following are the steps involved in converting a "Plain RPM Directory" into a repository using GTK-YaST on openSUSE 12.3, GNOME 3.6 :-
  • Dump all the rpm files you have in a suitable directory under your "Home" directory. I have all my rpms in directory "~/Software/rpms"
  • Press Left "win" key / Alt+F1 to bring up Activities window / launcher.
  • Then type "install" and it will bring up an application called "Install/Remove Software". Click on that to open YaST Software Manager.
  • Click on menu Configuration==>Repositories to navigate to "Repositories" window
  • Click on the add button in this window and it will take you to "MediaType" window where you need to choose "Local Directory" and press on "Next" button.
  • In the next window provide appropriate "Repository Name" and "Path to Directory" where your rpms are present. Also choose the option "Plain RPM Directory." and press on "Next" to complete the process.
  • You will now find  the "rpms" repository in the main window of YaST software Manager.
Screencast showing creating local repository using YaST
Note:- The trick for converting Nautilus Pathbar to textual input entry is to press Ctrl+L

Image resize and rotate using Nautilus on openSUSE 12.3, GNOME 3.6

 The Nautilus-Image-Converter is an extension that allows you to resize / rotate images from Nautilus. This extension is very useful when uploading images to websites (size limitations), creating thumbnails etc.
Installation & Usage
Step 1:- We need to Configure Community Repositories in YaST, GNOME 3.6, openSUSE 12.3
Step 2:- Launch command launcher(Alt+F2) and open terminal using command "gnome-terminal".
Step3:- Using zypper we can install the relevant extension using command "sudo -u root zypper in nautilus-image-converter".
 Step4:- Use the context menu (or) right click menu to "rotate" and resize images. The extension automatically appends a ".resized" and ".rotated" string to the names of newly created files, lest the original file gets overwritten.
Screenshot showing Nautilus "resize". Resize supports "resize to pixels", "scaling" and "custom size" functions.
Nautilus Resize
Screenshot showing Nautilus "rotate". Rotate supports "pre-defined rotations" and "custom angle" functions.
Nautilus Rotate