Monday, July 4, 2016

Returning to Debian

I'm a Linux user, everyone and their immediate families all know this by now. So fair warning, technospeak ahead:

A few months ago I stopped using Ubuntu and Ubuntu derivatives based on some things that Canonical had done. The first and the one that honestly made me first look for an alternative was what they had done to Jonathon Riddle. Though I never met the man he and I have had email exchanges and I have a lot of respect for his work in KDE. I may no longer use KDE myself I feel his forced removal from the Kubuntu project was wrong and extremely politically motivated.

The forcing of needing Mir just to run certain applications, like Synaptic Package Manager in root mode, and gedit made me realize that it is most definitely not in my best interest to continue using Ubuntu or any Ubuntu based Distribution if the tools I use, want and really need won't work for me because I use a desktop other than Unity.

Canonical does not seem to have the best interests of the Linux community as a whole in mind and are pushing an agenda more than a product. The main point of Linux and Open Source Software as a whole, is the freedom to make choices.

I went to Fedora and it actually worked great but I quickly realized that the reason I initially started using Ubuntu to begin with was that it had the largest selection of available software in the Open Source Community since it was Debian based and essentially was Debian to begin with only more up to date and less restrictive on non GPL licensed software.

My problem really was going back to using Debian as it was not exactly easy to install, as Debian's installer kept hicupping on the GRUB installation when I used the Live DVD image.

Had to go to the Internet install CD image to get that accomplished, after I installed the driver for my wireless card. The main reason I went with the non-free Live CD installer is the network device drivers on my Lenovo ThinPad were included but it failed to install GRUB and I can't boot my system without it. (GRUB is a boot loader that runs the initial startup for Linux systems.)

Finally I got Debian 8.3, Code Name Jessie, installed. Up and running I began to install the software I needed and updated it where I could. After I finally got the base packages installed I turned on Debian's backports repository and got a whole lot more of it updated, including the kernel.

The biggest issue with Debian is multi-media, as nearly none of the codecs meet with Debian's licensing requirements. Had to add a third party repository to get those, though I am happy to say I can once again watch movies and stream video from sites. That means I can watch all my television shows and DVDs as before. Though getting the system to do it wasn't pretty I did indeed accomplish the task.

I even got Compiz (Linux compositor and effects system) going so I have my virtual desktops available (a.k.a. the infamous desktop cube) as well as the Emerald Windows decorator so I don't have a bland and boring desktop to look at. (My biggest gripe about Windows 8 and 10 is the flat look they use. Absolutely hate it.)

Ah yes it took a whole lot of work and research to get Debian up and running the way I want it to and worth every bit of it. Viva La Linux.

Saturday, September 19, 2015

Online Python Learning Resources

Friday, September 4, 2015

MATE Is Creating A Challenge With Porting GnoMenu

Well as the saying goes anything worth doing will not come without challenges. Case in point is bringing back the abilities of GnoMenu, which was originally made to work with Gnome 2 to MATE which is a continuation of the afore mentioned Gnome 2. Now oddly enough the challenge is caused by the deprecation of the one thing that caused the GnoMenu the most issues, Bonobo.

Bonobo was a component model for creating reusable software components and compound documents in GNOME 2. Bonobo was deprecated in both MATE and GNOME 3 (officially deprecated in GNOME 2.4) and MATE for the sake of backwards compatibility implemented their version of Bonobo which was a short lived stop gap to allow panel apps in MATE to continue functioning while the MATE developers to move the new D-BUS implementation via GSettings/DBUS. To understand how much this changes things you need to understand that syntax is vital in programming. The switch from Bonobo to DBUS changes not only the command and calls but the syntax as well. As an example here is piece of code used in that needs to redone to use Gsettings/DBUS:

import gtk
import pygtk
import commands
import sys
import gobject
import mateapplet
from gi.repository import MatePanelApplet as mateapplet
import os

if not os.path.exists(os.path.expanduser("~") + '/.mnwmenu') or not os.path.isdir(os.path.expanduser("~") + '/.mnwmenu'):
os.system('mkdir ~/.mnwmenu')

import gconf

Now here is an example of code that performs this same base function with the new syntax:

import gi
gi.require_version("Gtk", "2.0")

from gi.repository import Gtk
from gi.repository import MatePanelApplet

def applet_fill(applet):

    # you can use this path with gio/gsettings
    settings_path = applet.get_preferences_path()

    label = Gtk.Label("My MATE applet in Python")

def applet_factory(applet, iid, data):
    if iid != "TestApplet":
       return False


    return True

MatePanelApplet.Applet.factory_main("TestAppletFactory", True,
                                    applet_factory, None)

Though this is not a pure function to function or process to process example it shows how the syntax has changed. Not all syntax changes can be attributed to the change from Bonobo to D-BUS either as Python also has had some changes to its base syntax as well.

I'm just learning Python and haven't written a program in years in any computer language. Beyond shell scripting and some HTML CSS stuff I really haven't kept up with it. Even with shell scripts like to help convert the Python code, because of the changes in the syntax structure, that are required, I quickly realized I am going to have rewrite nearly all of the modules from GnoMenu from scratch to comply with syntax structure and ensure that the proper commands and functions are used. I contacted Helder Fraga and unfortunately he no longer has any notes on GnoMenu, which means (drum roll please) I'm going to have to reverse engineer the GnoMenu code (which means creating lots of flow charts) so I can recreate the app.

You can bet you A$$ there will be follow ups to this Post.

Thursday, August 27, 2015

Notes For My Ultimate Linux Desktop System

Needs to be done
Based on Debian but separate like Ubuntu (but not Ubuntu based, though forking some of their applications and tools is always an option.)
Full emphasis on the MATE desktop and GTK3, porting programs from other Desktop Environments such as K3B and KDEConnect to GTK3. The Desktop needs to be simple to use but also allow more advanced and power users to have the control over their system and desktop that they desire.
Return GnoMenu (and rename it) to the desktop, porting from Python to GTK3 and cleaning up existing bugs. Add abilities to bring more menu layout functions and options. Should be able to work with mouse based and touch screen based systems allowing for themes to work with either or both.
Compiz and Emerald both need to be revived and Compiz needs to be forked from Canonicals current development branch. This includes returning the functions and plugins either modified or removed by Canonical to suit their Unity Desktop Environment. Integrate Compiz and Emerald into MATE to be the compositing system. Start adding Wayland support. Fix issues caused by the Unity support (possibly removing all Unity support code.)
Return full Eye Candy support and theming options. Not everyone likes the flat look being pushed on most Desktop Environments today. Users should always have the option to make their desktops look the way they want. MATE is capable of being modified in such a way when the right options are available.
Develop a ISO creation tool that allows people to create customized ISO images that is simple to use for novice and expert alike. Something like Systemback.
Things that should be done.
Finish the job of transporting Nautilus options and plugins that were available to Nautilus in Gnome 2 to Caja. While the main plugins have been done many other excellent ones have not.
Bring the options from third party tools used by MATE such as Touchpad Indicator and add them to the existing Control Center tools. (To me this is a no brainer and should have been done from the beginning. Many of these options should be native and not from third party add ons.) Consolidate the Control Center options, Emerald Theme Manager should be part of the Appearance control etcetera. Also many of the Control Center options are not properly catagorized. Case in point, Firewall Configuration (GUFW) belongs under Internet and Network not Other and Network Options under System should also be under Network, and part of the Network Settings under that. Gparted should be in Hardware not System, as examples.
Update Gkrellm and plugins specifically for MATE. Add true transparency and Wayland support. Update plugins, both built ins and add ons, to use newer tools and commands. Add support for new hardware and software. Allow horizontal placement. Add left and right click options to some of the modules (an example would be accessing the desktop calendar from the system time plugin, or accessing system power options from the battery monitor plugin.) Gkrellm itself should function as a extension of the system tray as well as a system stack monitor. Removes redundancy and declutters the desktop experience.

Monday, August 3, 2015

Emerald for Debian Jessie and LMDE 2 Betsy

In my post concerning how to Install Compiz on Jessie and LMDE Betsy I stated that Emerald Decorator would be my next target to get working. I am happy to say I have accomplished this and tested it. The dependency issue is fixed and it installs without any broken package issues. Its also the first deb file I have ever packaged, which is cool.

The deb file can be downloaded here.


Tuesday, July 28, 2015

Has Your Network Manager Icon Disappeared?

A recent issue has reared up with the Network Manager Applet not loading in Debian and Ubuntu. AFAIK it effects Unity, MATE and Gnome and possibly other Desktop Environments. In all cases the solution is quick and simple.

In your startup add the following command:

dbus-launch nm-applet

Then logout out and log back in, or restart.

This appears to be caused by an update but I have no idea which update package is the culprit. I don't recall an update for Network Manager recently but then I just may not have noticed it.

Sunday, July 19, 2015

How I Got Compiz Working In Debian 8.1 Jessie

If you love having the desktop cube or other goodies in Linux via Compiz but use a Debian based distribution other than Ubuntu you have probably noticed that its is no longer in the repositories, including testing and SID. Well fear not you can now get it. I use Linux Mint Debian Edition which is based on Debian 8.1 Jessie release.

After trying several different methods to get it installed, including compiling the source code (epic failure) I did my usual investigation to determine what needed to be done to resolve this. To me Compiz is a vital component, effects aside I rely on the Desktop Cube. It organizes my work flow and allows me to perform operations with less clutter from having several things open at once.

The problem in getting Compiz to work was the missing dependencies from the Debian Repositories so no matter what method I went with I would either get broken packages or outright failures in these attempts. That being said I went to one last (by last I mean it was my absolute final attempt) effort to install Compiz.

In a nutshell Compiz development is only being done by Canonical right now. Its an integral part of their Unity Desktop so they are actively developing it. However, as many have noted the version in Ubuntu 15.04 doesn't work with Debian 8.1. Well fear not because the version in the upcoming 15.10 release does. Wily Werewolf is the solution to our Compiz dilemma.

Add the following line to /etc/apt/sources.list

deb wily main universe

Update your sources, install Compiz, the plugins and ccsm then either remove, or comment out, the line.

I am currently using Compiz on my system.

For my next magic trick, Emerald Decorator.

Wednesday, February 25, 2015

Caffeine Plus returns manual toggling of screensaver / lock screen in Ubuntu and Kubuntu

I'm not going to reinvent the wheel and write a long winded blog here as its just best to send you to the Webupd8 Blog that has all the information you need and install instructions. I'll just say its good to have this function back.

Wednesday, November 12, 2014

Can't sleep and for once its because I'm in a good mood!

You know despite a few things that nearly ruined my entire Veterans Day there was one amazing bright spot that has had me smiling tonight. My son's class put on a show at the school he goes to. As a veteran I was proud to attend and my son was I happy I came. So I just want to share the moment.

My wall will never be the same again!

Monday, November 10, 2014

Firefox Developers Edition is available: How to install it on Linux.

I just downloaded and setup Firefox Developer Edition. Though I haven't delved into using it yet I really like the interface and features I have gleaned over so far. Its also HTML 5 compliant (very important.)

There is no deb or rpm file available yet but it runs out of the box once you unpack the tar file. To make it available as a global place the unpacked folder (you don't have to do this but I renamed the folder firefoxDM to differentiate the the two versions of Firefox) somewhere in your available executable paths. (I went with /usr/share/) I then used my menu editor to create the entry so it appeared in my menu. For me the full path to the executable is /usr/share/firefoxDM/firefox

I also grabbed a Icon to make the difference between the standard browser and the developer edition visibly apparent.

Yes its that simple to setup. Enjoy

Sunday, November 2, 2014

Hiding the Cashew

I use KDE but I am not, and never have been a fan of the Desktop Cashew. It's of no real use to me and I just don't like it on my desktop. Though I can't actually remove it I did learn how to hide it.

In the current version of KDE you can drag the Cashew to the bottom of the screen and place it underneath the panel. If you have a transparent, or semi-transparent, panel this may become slightly more annoying. However if you have a non transparent panel its a great way to hide the Desktop Cashew. So this is what my desktop looks like.

Yeah it works for me.

Sunday, October 26, 2014

I actually started off today with the intent of blogging about KDE features that are now working in Kubuntu 14.10 that didn't do so well in 14.04. Screenshots and all. The one I wanted to rave on the most was KDE Connect. However, despite having Android Jellybean, which has a built in screen shot feature, when I used the button combination my phone restarted instead. So I spent a good part of my afternoon in chat with a Samsung rep trying to get it fixed (After a factory reset we did.)

End result, no blog on KDE Connect or Cloud Storage Manager, as I have to work on getting my phone back to the way I had it. Thank God for Google settings backup services which had my app settings stored but I have to completely redo my layout to get it back to where I had it. What was the cause of the problem? An Android System update sitting in my queue waiting to install. Go figure.

Sunday, October 19, 2014

Getting Kolab on Ubuntu

These are the steps I needed to do to setup the Kolab Repositories for Ubuntu. Please note these are minor corrections that are listed from the Kolab Site:

For Ubuntu 14.04: Add the following lines to /etc/apt/sources.list;

deb ./
deb ./

Get the gpg key:

gpg --keyserver --search

To import the key:

sudo bash
gpg --export --armor | apt-key add -

Put the following in /etc/apt/preferences.d/kolab:

Package: *
Pin: origin

Pin-Priority: 501

sudo apt-get update

aptitude install kolab

When asked to confirm that you want to install the package and its dependencies, press Enter.

Tuesday, September 9, 2014

How to actually get Kontact to Sync with Google Calendar.

After spending the last few days figuratively banging my head on a brick wall to get Kontact to sync with my Google Calendar I found the proper way to do it, alebeit by accident. Everyone else's how to simply isn't working. So here is the correct procedure.

All do give the correct first few steps;

For Debian flavored distros:
sudo apt-get install akonadi-kde-resource-googledata

for RPM based distros, using yum:
yum install akonadi-googledata

Next they tell you to Select Akonadi Google Calendar Resource. This is incorrect, you should actually select Google Calendar and Tasks.

The following window will appear when you do;

Your's of course will be empty. Click on the Add button at the top to setup access to your Google services. In the next dialog box enter your Gmail address and password.

Lastly you need to accept the following so you can get your calendar and tasks loaded into Kontact;

That's it, your done and Kontact now has access to your Gmail services.