Memories…

December 1, 2009

Some time ago, I was working as student on a trade at IKS Baumgarten & Baumgarten and had to write an additional piece of software for my company. The task required me to :

  1. learn Delphi.
  2. understand the tools we used in the company
  3. write it.
  4. Do all this 3 days a week in a time of 6 months.

The application was an anhancenment to a long standing assurance management software the Company was working on. It was called topsales. Internally as it was a Graph drawer and Graf(german word for Count as in Count Chocula) sounds similar we called it count. Later it became part of TopSales and was released with the latest update. My employer was so kind to supply me with a freely redistributable screenshot of what it will look like on the Desktop of our customers.

This is what I made for work

If you are an insurance company and have people travelling around asking people to get an insurance you might want to try it out we have really good prices.

See TeamTopsales for details.

Thanks for the nice time I had!


Security even behind the little blinky wall

November 17, 2009

So you are a unix/linux lover and like your system to be secure even against external intruders for examble when you run a small website(like me which is not yet online cuz I dont want to afford the domain) or a personal apt repository. This means Security Security Security.
Like me you might have a small headless machine standing around somewhere doing this job. But how do you secure something that is somewhere else and not your workstation and doesnt have a head(monitor) connected to it. Leaving alone the fact that you might need a keyboard/mouse. Well you connect to it via FTP/SSH/SFTP to transfer files and commands to it.
But the fact that its also avaiable via the web you might have some concerns. All these services working on open ports!

My recommendation is the brilliant and lovely Firewall Shorewall. It might take some time to get into it but I will lead you through. Lets have the thing that you are behind a router. And have a LAN of say 192.168.178.0/24(Means IP range 192.168.178.1- 255). And start configuring your one interface firewall(because your server might only has eth0). So you have something like this in your /etc/shorewall/interfaces :


#ZONE INTERFACE BROADCAST OPTIONS
net eth0 detect dhcp,tcpflags,logmartians,nosmurfs

which means the zone called net is connected to your network interface eth0(see ifconfig as root) and its getting its Broadcast(its IP) via detected dhcp offers it sends out. It also logs people from outside also known as martians (the other ones i didnt really investigated on). Your own workstation is on the same LAN IP Range (see above). To not just get the net which is 0.0.0.0/0(match all ips where 0 numbers match said IP)
so basically all. The best bet now is to add your local LAN as a nested subset of this IPrange.
So you go to your /etc/shorewall/hosts and add:

#ZONE HOST(S) OPTIONS
loc eth0:192.168.178.0/24

Which defines loc as your local IPrange of 192.168.178.0/24 which is a subset of the previously in /etc/shorewall/interfaces defined zone of net. Which is now also through eth0 but only picks up around 192.168.178.0/24 as allowed HOST IPrange to be allowed as loc zone.
Now you can be as specific as you like if you want to graain it even finer just replace 192.168.178.0/24 with say 192.168.178.40 which might happen to be your personal work machine and call this zone sam.

And you can be as secure as you like see here my /etc/shorewall/rules:

#ACTION SOURCE DEST PROTO DEST SOURCE ORIGINAL
# PORT PORT(S) DEST
#allow FTP from a ip that comes out of he local IPrange
FTP/ACCEPT loc $FW #$FW means Firewall in this respect
#allow all people to look at your website
HTTP/ACCEPT net $FW tcp

Thats all for now for more information look here.
If your unsure also look at their documentation and their IRC channel on irc.freenode.org channel #shorewall .

Have fun!


I can has package for bangarang?

October 17, 2009

Sure you do now avaiable on my ppa at launchpad.
Go and check it out.
This one will also host aki and akiir packages for kde.
The packages are for karmic or later lucid as they are testing and unstable mostly if you want to hack on them please contact the head developers of the two.
Additionally lots of things around bangarang have happened. If you have complaints about it you can now go to our issuetracker on google code .
Then my code has been merged into the master. Its simply a videsettings dialog using a KCOnfigDialog. But this will be changed so that the playlist in the “now playing view ” can switch to a videosettings where you can change the various properties that a Phonon::VideoWidget exposes to a developer. An audiosetttings at the same place is also in the pipe but I’m still thinking of doing this post 1.0 release as this might then involve Qt4.6 dependencies which I dont want to bother with now.
Also I got slightly addidcted to kpat during these periods of painfully uploading it with my super slow connection.
If you run dragonplayer aside with bangarang you might notice the little strangeness that both video output change accordingkly to your settings in your videowidget. As I have been told tghis is not a bug but a feature of the new XVideo in xine. and as Bangarang(on my machine) uses the phonon-xine-backend it appears here. So no worriess we didn’t screw you up.
As just a second ago I have been aknowledged that packages for bangarang are now avaiable for amd64 and intel platform thanks to launchpads build service.
I encourage you to test and notify us abnout bugs apppearing in the packages.


Making KDE packages for Debian

October 15, 2009

So you have written this sexy app that does all these sexy things and works nice withe KDE. You are usually using Debian and want to make a Debian package for your application, of course.
You usually start out with this line :

dh_make -e user@email.com -c gplv3 -f ../app_1.0.tar.gz -s -p app-1.0

This will usually do the following:
dh_make: make a subdirectory called debian/ in your programs root directory

-e user@email.com: sets the packager email-address to user@email.com
-c gplv3: sets the license to the GNU GENERAL PUBLIC LICENSE
-f ../app_1.0.tar.gz: makes the package ../app_1.0.tar.gz to the base package for the Debian package.
-s: defines it as a single binary
-p app-1.0: defines the package name as app-1.0

So now everything is fine you got your /debian directory Yay! But now you start editing debian/control to set the dependencies the package type and so on and so forth.
But now you get to this debian/rules file. As your KDE application obviously uses cmake you know what to do to usually build a cmake application.

mkdir build
cd build/
cmake ..
make

And if you want to install it of course:

sudo make install

But now you want to apply this to your debian/ile which doesn’t do that. During the hole packaging process
dpkg-buildpackage stays fulltime in your packages root directory and throws ” seems to have no CMakeLists.txt ” at you.
Now you have 2 options. (1) Screw up your root directory with temp and build stuff from cmake or (2) do replace the
debian/rules code with this:

#!/usr/bin/make -f
# -*- makefile -*-

include /usr/share/cdbs/1/rules/debhelper.mk
include /usr/share/pkg-kde-tools/makefiles/1/cdbs/kde.mk
#if you have docs as manpages
DEB_INSTALL_MANPAGES_ = appname.1

build/appname:
#if you have docbook stuff
docbook2x-man debian/appname.1.docbook

install/appname::
rm debian/appname/usr/lib/*.so

clean::
rm -f appname.1

This will do the trick to install the application according to CMakeLists.txt and will do what you want.

If this comes up along the comments: CPack is not applicable for the packaging of debian packages as they are not matching the rules of the debian packaging system.


Komedy is dead long live bangarang

October 9, 2009

As you might boticed there was a recent blogpost on planet.kde about a new exciting project revolving around kde.
Its bangarang an application that had the same in mind as komedy.Scratching an itch for a Multimedia player capable of doing video, music and audio. He had some more time to do his job and he did a really nice job so far.
I join bangarang and will help them making it the best it can be. Go ahead try bangarang its good.


Current progress…

September 28, 2009

So now that some sort of base is established. I started working on the playlist a little more and plan to make it a model/view based approach like in amarok. But it should be relatively small compared to what amarok did so far.
I have a new person on the team his name is Milot Shala. He and I will work on komedy together. His field for next few weeks will be the movie collection while I concentrate on the playlist as mentioned above.
If some of you have had experiences with MVC and can share some knowledge about how to implement it best dont hesitate to tell me in the comments.
I’m also now on identi.ca the nickname is the same as here (xxtjaxx) . I try to keep some sort of daily report of how the development has elaborated while working on it.
I still have some glitches I have to work on. Such as the fullscreenmode is not yet soo nice but will get better over time. Key press events are also in focus.
I noticed that I get quite bored watching the same movies over and over while Im testing my application. Somebody got some suggestions of good movies for me? :)
Another nice thing for you is my new flikr account where you can see some recent screenshots.
If any one of you might want to test it out or have usabilllity suggestions please use the comments below.


It’s growing and growing and growing and…

September 20, 2009

Komedy has gained strength , size and functionality in the last few days.
You can now play watch and add to a playlist. Some bindings may need to be setup but the almost basic things are working.
A small snapshot of how it might look like when its time for 0.1:
komedy

This will probably stay like that but the sliders will work. Promiss!
The next thing will be the collection and implementing the Coverflow.
Also I will have to work on the playlist, Its too rudimentury.
Stay tuned and maybe send some patches.
I still look for people that can help me. I will gracefully apply patches if you have some.
New full contributers can be added too.
Come around send me a mail or ping me at #kde-devel #kaffeine or wherever.
Kaffeine will help me at DVB-T. But I can’t test that.


an update finally!

September 18, 2009

Sorry for the really late update but i didnt get around to do this untill now.
We have a playback-control and an actual player now all I will have to do now to bring it up and playing is connect the signals in komedyview.cpp and do some phonon magic to actually play somethig.
but let me first show you a picture of it :
Desktop1
this is what it looks like right now.
So imagine if you will a playlist on the right and some URL querying tool below the play slider.
You can also see that there is a webview already. Which by default shows you http://www.imdb,com but thats not what you want in the first place.
I might have some extra headache as I cant figure out a usual way to let the user grab the view and resize it unless I use some layout voodoo. I will definitely work on something.
Btw If you want to get your self a name in the business start hacking on QLABEL I could use some text that is either floating from right to left or left to write ( depending on the language) this would come right between the playback and the videoplayer. It Will show the title and somem additional info and make the hole thing look a bit cooler.

So next goals going to e to make my layout resize. Then see if I can ship around the issue of dock widgets and make it easier accessible as well.
I want to make the seek slider smaller too but this will be later. But for now I will leave it fat as it is .


Komedy

September 11, 2009

Allright you wanted and you get it.
Please let me introduce to you the movie management tool for KDE:

KOMEDY
————

The infrastructure to start digging and working on the code is established.
first code got uploaded to git.
I plan to use the browser and playlist capabillities of amarok and will modify them to the needs of komedy.
It will use the phono backend for playback.
Unless we find out that QtMultimedia is more what we want.
But Ive heard that there would be some complications around QtMusltimedia that would make it hard for us to really do something.
You would have to publish two versions of your program one with OSS and one with ALSA support which i very unlikely and not what I prefer.

Anyway the code as well as some other things are now in my personal git repo. CLONE IT TODAY.
the command to get the sources is
git clone git://github.com/xxtjaxx/xxtjaxxRepository.git

Me and my 2 co-programmers will start off hackig on this and will make it the best we can.
Maybe its ready for pure release by 4.5 or even 4.4 when we get a fast start.
I will also talkl to the kde-usabillity folks so that we get the most out of the UI and workflow for the movie fanatic. ;)

If you want to come to our group and want to add manpower just add a comment or talk to me on #kde-devel.


Go Vote!

September 10, 2009

I have posted the idea to KDE-Brainstorm.

Here is the link.
Go vote! Discuss it! Write comments!