⌨ Labor omnia vincit ☮

GNU Screen v.4.5.0

Posted in GNU/Linux, openSUSE by anaumov on 18.01.2017

I’m proud to announce the release of GNU Screen v.4.5. This time it’s mostly a bugfix release. We added just one new feature: now it’s possible to specify logfile name by using parameter -L (default name stays screenlog.0). Myself also spent some time to make source code a bit cleaner.

As you probably noticed we were going to release 4.5 until Christmas. Unfortunately, we could not do it because of some internal GNU problems. I apologise for that.

As usual, we merged some community patches from our bug tracing system (small patches also were presented in IRC) and I would like to thank everyone who contribute to Screen and helps us to test development git-version!

For openSUSE users: I updated our devel-package already. It’s soon in factory and, as usual, after openQA routine new package will be available in Tumbleweed.

Battleship – Sinclair ZX Spectrum

Posted in fun, myself, openSUSE by anaumov on 07.03.2016

The first computer, which was in my family, was ZX Spectrum. I think, I was about 6 when my father bought the first computer. This computer I used for gaming of course. I started programming later and on PC. I will never forget the sound of loaded games on Spectrum (software was distributed on audio cassette tapes and loading into memory was a sound (perceived by the human ear), interpreted as a sequence of bytes)…

Last weekend I played with my 5 years old son in Battleship. I showed him this game first time and we used pencil and paper. He teaches the alphabet and I think this could be a good experience for him. You know that feeling when you have something to show your children, do you remember your childhood. I don’t know why, but I remembered not a “paper version”, but our first computer and how I with my older brother played in Battleship on Spectrum against the computer.
Battleship
I thought about this until evening and at the same evening found this game in net. I found a lot of different information about this game, the most important of which was the fact that this game can be installed on any PC running GNU/Linux. Yaaay… I can’t remember what I planed to do on this night, but until I went to sleep I installed spectrum’s Battleship on my x86_64 openSUSE and plunged into childhood for few hours 🙂
Battleship
To install spectrum’s programs on UNIX/Linux you need to install emulator. In case of openSUSE, you need to add Emulators project first. After that install FUSE package. It just works. Just start fuse-binary with game-file-name as a parameter.
Battleship
I would like to thank FUSE developers and openSUSE FUSE mainainers. I don’t play in “today’s” games, but time-to-time can spend a bit time for games of my childhood.

Linux Presentation Day + Leap 42.1 release party in Munich

Posted in Events, openSUSE by anaumov on 16.11.2015

On Saturday we had the openSUSE Leap 42.1 release party in Munich, which I announced a couple of days ago. We had around 20 participants there: about 10 openSUSE users and also about 10 GNU/Linux users from the Linux Presentation Day – people that just started using Free Software and wanted to know more about openSUSE, GNU project, Open Source in general and of course celebrate with us the new release 🙂

But at the beginning I had no idea where we can meet in Munich. On Wednesday I asked in our German ML about location and Marcus advised Linux Presentation Day. Two minutes later I sent email to Linux Presentation Day event’s organizers and asked about separate room with beamer and power sockets. We got everything what we asked about. Thanks a lot for collaboration!

After that, on Friday (when I was sure about location and room was reserved for us) I come to Nuremberg to take openSUSE promotion material like USB flash sticks, DVDs, stickers, green “Leap” T-shirts and openSUSE beer. It’s not so far away from Munich. I think, about half of eighth I was at SUSE Office and Richard gave all “release party stuff” (last time, when I organized openSUSE 12.1 release party in Göttingen, I got all these stuff via post, with the exception of beer of course).

I had a talk about openSUSE project in general: the talk was targeted primarily for those who never heard about OBS, Leap or openQA. I tried emphasized the role of the community in openSUSE project.
I got many questions about systemd, SUSE impact on the openSUSE and quality of the “Enterprise Core” part which will be used in the Leap. I enjoyed talking with many that showed up and received as main feedback from many of those that I talked with.
If you’re going to invite “everybody” to your release party, you don’t need to talk so much about infrastructure or development model of openSUSE, I guess. That’s important and interesting for developers and Free Software evangelists maybe, but not for users, who are still not sure about contributing. For such users it’s more important how good this version as a desktop system than how easy to use submit request in OBS or which programming language should they use for implementation of tests for openQA or something like this.

By the way, at Linux Presentation Day we met one journalist from linux-user.de. So, I think my post will not be the only one about this event 🙂

I want to thank Richard and Doug for openSUSE stuff, Linux Presentation Day organizers for hosting us in the VHS building and… thanks to all who joined us! See you next time and have a lot of fun 🙂

more photos.

openSUSE 42.1 Leap :: Release Party in Munich

Posted in openSUSE by anaumov on 12.11.2015

openSUSE 42.1 Leap was released about week ago and it is looking good. Now we have community enterprise system. I would like to thank everyone who contribute to openSUSE project and help to make it better.

Of course, we should have openSUSE release party! openSUSE community haven’t had release parties in Munich for a while (since I live in Munich I think we never had it here).

So, what is release party about? Well… like usual: Linux geeks meet together, speak about features in new openSUSE version, news in Free Software world, drink beer and… of course have a lot of fun 😉

A few days ago I started discussion about release party with Linux Presentation Day organizers and it seems that problem with location is solved now. We will get small meeting room with power sockets and beamer there. That is exactly what we need. I also asked Doug and Robert about some “promotional material”, openSUSE beer and TShirts. Tomorrow (Friday) I’m going to go to SUSE office in Nuremberg to take it (beer can not be trusted to anybody).

Do you want be a part of it?
* November 14, Saturday
* I start my presentation at 12:00 AM. I’m going to talk (presentation) about OBS, Leap and openSUSE project in general.
* vhs-Zentrum, Münchner Str. 72, Eingang rechts, 85774 Unterföhring
* Don’t forget to bring your good mood and friends 😉

Everybody are very welcome! If you have any questions about openSUSE, GNU project or Free Software, feel free to come and ask.

openSUSE factory :: dumpe2fs

Posted in openSUSE by anaumov on 02.10.2014
# dumpe2fs 
dumpe2fs 1.42.12 (29-Aug-2014)
Segmentation fault

# echo $?
139

# dumpe2fs -h
dumpe2fs 1.42.12 (29-Aug-2014)
Segmentation fault

> rpm -qf `which dumpe2fs`
e2fsprogs-1.42.12-1.2.x86_64

> cat /etc/SuSE-release 
openSUSE 20140909 (x86_64)
VERSION = 20140909
CODENAME = Harlequin
# /etc/SuSE-release is deprecated and will be removed in the future,
use /etc/os-release instead

# ltrace dumpe2fs
__libc_start_main([ "dumpe2fs" ] 
setlocale(LC_MESSAGES, "")                        = "en_US.UTF-8"
setlocale(LC_CTYPE,"")                            = "en_US.UTF-8"
bindtextdomain("e2fsprogs", "/usr/share/locale")  = "/usr/share/locale"
textdomain("e2fsprogs")                           = "e2fsprogs"
set_com_err_gettext(0x401a00, 1, 1, 0x73676f72707366)                              = 0
add_error_table(0x605260, 1, 1, 0x73676f72707366)                                  = 0
__fprintf_chk(0x7f4fcb90f060, 1, 0x403b42, 0x403b3adumpe2fs 1.42.12 (29-Aug-2014)) = 31
getopt(1, 0x7fff9f754798, "bfhixVo:")                                              = -1
ext2fs_open(0, 0x29000, 0, 0 < no return ...>
--- SIGSEGV (Segmentation fault) ---
+++ killed by SIGSEGV +++

strace dumpe2fs…

Perl party :)

Posted in fun, hacking, openSUSE by anaumov on 18.07.2014
#!/usr/bin/perl

    ''=~(        '(?{'        .('`'        |'%')        .('['        ^'-')
    .('`'        |'!')        .('`'        |',')        .'"'.        '\\$'
    .'=='        .('['        ^'+')        .('`'        |'/')        .('['
    ^'+')        .'||'        .(';'        &'=')        .(';'        &'=')
    .';-'        .'-'.        '\\$'        .'=;'        .('['        ^'(')
    .('['        ^'.')        .('`'        |'"')        .('!'        ^'+')
   .'_\\{'      .'(\\$'      .';=('.      '\\$=|'      ."\|".(      '`'^'.'
  ).(('`')|    '/').').'    .'\\"'.+(    '{'^'[').    ('`'|'"')    .('`'|'/'
 ).('['^'/')  .('['^'/').  ('`'|',').(  '`'|('%')).  '\\".\\"'.(  '['^('(')).
 '\\"'.('['^  '#').'!!--'  .'\\$=.\\"'  .('{'^'[').  ('`'|'/').(  '`'|"\&").(
 '{'^"\[").(  '`'|"\"").(  '`'|"\%").(  '`'|"\%").(  '['^(')')).  '\\").\\"'.
 ('{'^'[').(  '`'|"\/").(  '`'|"\.").(  '{'^"\[").(  '['^"\/").(  '`'|"\(").(
 '`'|"\%").(  '{'^"\[").(  '['^"\,").(  '`'|"\!").(  '`'|"\,").(  '`'|(',')).
 '\\"\\}'.+(  '['^"\+").(  '['^"\)").(  '`'|"\)").(  '`'|"\.").(  '['^('/')).
 '+_,\\",'.(  '{'^('[')).  ('\\$;!').(  '!'^"\+").(  '{'^"\/").(  '`'|"\!").(
 '`'|"\+").(  '`'|"\%").(  '{'^"\[").(  '`'|"\/").(  '`'|"\.").(  '`'|"\%").(
 '{'^"\[").(  '`'|"\$").(  '`'|"\/").(  '['^"\,").(  '`'|('.')).  ','.(('{')^
 '[').("\["^  '+').("\`"|  '!').("\["^  '(').("\["^  '(').("\{"^  '[').("\`"|
 ')').("\["^  '/').("\{"^  '[').("\`"|  '!').("\["^  ')').("\`"|  '/').("\["^
 '.').("\`"|  '.').("\`"|  '$')."\,".(  '!'^('+')).  '\\",_,\\"'  .'!'.("\!"^
 '+').("\!"^  '+').'\\"'.  ('['^',').(  '`'|"\(").(  '`'|"\)").(  '`'|"\,").(
 '`'|('%')).  '++\\$="})'  );$:=('.')^  '~';$~='@'|  '(';$^=')'^  '[';$/='`';

Attention…

Artefacts :-)

Posted in humor, openSUSE by anaumov on 12.06.2014

S.u.S.E. Linux 4.4
For Linux installation… ready 😉
Show me more photos…

openSUSE :: stumpWM

Posted in Lisp, openSUSE by anaumov on 08.02.2013

stumpWM

When you think about GNU/Linux, you probably think about servers or data storage systems. It could be also development machines or maybe desktops (but probably not). For me GNU/Linux was always place for different experiments and also platform on which I can implement my ideas (which often break system). So, today I would like to tell a bit about the Stump Window Manager.

Let’s start by saying that stumpWM is a tiling, keyboard driven X11 Window Manager written entirely in Common Lisp, and Common Lisp is a one of dialects of the Lisp – a family of a multi-paradigm programming languages (supports a combination of procedural, functional, and object-oriented programming paradigms). There are many reasons to use stumpWM. For example, you would like to have benefits of tiling window managers (its tiling windows to use the whole screen and focus on a user experience which is highly keyboard driven operation), or maybe you just want to learn Common Lisp (as we all know, reading the source code of a big professional project is a good idea when you learn a new programming language).
Keep reading this post…

Merry Christmas and Happy New Year

Posted in humor, myself, openSUSE by anaumov on 22.12.2012

If you read this, it means that you somehow miraculously have survived after an apocalypse, that was scheduled for yesterday. Of course you know that in spite of the end of the world, the role of the Open and Free Software stay the same. Hm… this is the most likely reason that you came to my blog, I guess 🙂

And you should be happy not just because have survived this “sad event”, but also because it is only 2 days until Christmas, and Christmas – it’s time for gifts! But again, as we all know, we will receive gifts, only if, first: Santa has also survived after an apocalypse; and second: only those of us who well conducted itself:

In any case, I would like to thank all those with whom we have done some work on Open Source projects. A lot of stuff was done at this year and it was great to work together with you guys. In the next 2 months I’m going to move to Munich where I found a new job and will keep work for the benefit of Free and Open Source Software.

Merry Christmas and Happy New Year! Stay crazy like you are. Never be satisfied, and always push yourself forwards. Belive in yourself. Keep doing the things people say can’t be done (or it makes no sense or something like this). Be ready to try new things. Keep doing Free Software better than before… and don’t forget to have a lot of fun of course 😉

openSUSE :: wrong checksums for Milestone1

Posted in openSUSE by anaumov on 21.11.2012

Just keep in mind, that we have broken md5 and sha1 checksums for our milestone 1 images right now (openSUSE 12.3).
So, don’t use md5 and sha1 files to verify your ISO images. We also have MD5SUMS- and SHA1SUMS-files and they are correct (use they to verify your images).
I remind you that you can check ISO images with md5sum and sha1sum tools.
Happy testing 😉

openSUSE :: Common Lisp Packaging Guide

Posted in Lisp, openSUSE by anaumov on 19.11.2012

About week ago Andreas Jaeger started discussion about packaging guidelines change process.
The packaging guidelines regulate all the nitty gritty details of packaging for the openSUSE distribution. There are general rules, rules about legal aspects of a package, about specific package features and about specific package types.

Until now we haven’t official rules for Common Lisp packages. For this reason I created a new page about it: Lisp Packaging Guidelines. You can find there rules and a bit information about Common Lisp packaging related stuff. It is still not official! I would like to invite all of openSUSE packagers and Lisp developers to join discussion about this and find the most interesting, correct, handy and optimal rules for openSUSE distribution (please discuss before change something in wiki).

openSUSE 12.2 + KDE 4.9.1

Posted in KDE, openSUSE by anaumov on 06.09.2012

KDE SC 4.9 was released after we froze own factory repositories at the final stage of development process of openSUSE 12.2. For this reason, in openSUSE 12.2 we have KDE 4.8.4 by default.
If you want to use last stable upstream KDE release (now it’s KDE SC 4.9.1), just add necessary KDE repositories, make upgrade and enjoy all the goodies the new version 😉

> sudo zypper ar -f \
http://download.opensuse.org/repositories/KDE:/Release:/49/openSUSE_12.2/ KDE_49
> sudo zypper ar -f \
http://download.opensuse.org/repositories/KDE:/Extra/KDE_Release_49_openSUSE_12.2/ KDE_Extra
> sudo zypper dup --from KDE_49 --from KDE_Extra 

By the way, don’t forget to disable all another extra KDE repos if you are going to upgrade.

05.10.12 UPD:
KDE 4.9.2 was officially released by the KDE team.
The packages for 12.1 and 12.2 can be found in our KDE:Relaase:49 repository.

openSUSE :: eGalaxTouch X.Org input driver in Open Build Service

Posted in GNU/Linux, openSUSE by anaumov on 17.03.2012

Let’s start by saying that the eGalaxTouch is a X.Org input driver developed by EETI for their touch screens.
Here you can download the suitable driver for your Linux Kernel and architecture. After untar it you will get a directory named eGalaxTouch32 or eGalaxTouch64. Inside this directory you can find a setup.sh script. This complicated script will handle the entire instalaton proccess. It works fine, but the script blasted files and symbolic links all over the filesystem, and there is no way to clean it. As a packager I want to use more professional mechanism to install or remove it. So I built a RPM/DEB packages for that.

How it works?

There are just 4 things that you needed to care about: egalax_drv.so, the binary driver used by the X.Org server; eGalaxTouch, the utility for calibrating and setting preferences; TKCal, a lower level utility for setting options in the hardware; and script also add some information about new configuration to X.Org config-file (I changed it: package create the new config file called /etc/X11/xorg.conf.d/50-egalax.conf).

Section "InputDevice"
        Identifier "EETI"
        Driver "egalax"
        Option "Device" "/dev/ttyS1"
        Option "Parameters" "/var/lib/eeti.param"
        Option "ScreenNo" "0"
EndSection

As you can see I use /dev/ttyS1. EGalaxTouch support S232, USB, PS2, and I2C controllers. So, if you use, for example, USB, you have to change device-string like this:

        Option "Device" "usbauto"

X -version

Here is also one important thing what you have to know: X.Org server and input drivers/modules should have same versions (support same API). EGalaxTouch driver contain modules for different X.Org versions. That means, that package have to check X.Org version during installation to know which input module should be used. I tested package on openSUSE 11.4/12.1 and Ubuntu 10.04 and it looks stable. Anyway, let me know if it will not works for you.

Don’t forget after installing the package and restarting X.Org Server also run eGalaxTouch and TKCal. This will let you calibrate the touchscreen. It takes a bit time to complete, but it increases the precision of the touch position.

Good luck and happy touching 🙂

OBS: adding the new distribution as a build target.

Posted in openSUSE by anaumov on 18.11.2011

Some of us build packages not for fun only, but also because it is a part of daily work. If you are and for any reasons you can’t build packages on http://build.opensuse.org (for example, due the license), you install your own OBS. In this case you will be responsible for all support and configuration stuff. Sounds difficult? I will say there is just one thing where I have a problem: addition of the new distribution as the necessary purpose for building. For example, if I installed my OBS a few months ago I can’t build packages for openSUSE 12.1, which was released a few days ago. Installing a new OBS is not the best solution in this case: you need some time for installation/configuration process and you have to move all projects there. If you need some packages for a new distribution(s) as a build target, just edit the file /srv/www/obs/api/files/distributions.xml:

<distribution vendor="openSUSE" version="12.1" id="opensuse-12.1">
 <name>openSUSE 12.1</name>
 <project>openSUSE.org:openSUSE:12.1</project>
 <reponame>openSUSE_12.1</reponame>
 <repository>standard</repository>
 <icon width="8" height="8" url="https://static.opensuse.org/distributions/logos/opensuse-12.1-8.png"/>
 <icon width="16" height="16" url="https://static.opensuse.org/distributions/logos/opensuse-12.1-16.png"/>
 <link>http://www.opensuse.org/</link>
</distribution>

and reboot OBS/MySQL/WebServer:

rclighttpd stop
rcobspublisher stop
rcobsdispatcher stop
rcobsworker stop
rcobsscheduler stop
rcobssrcserver stop
rcobsrepserver stop
rcmysql stop

rcmysql start
rcobsrepserver start
rcobssrcserver start
rcobsscheduler start
rcobsworker start
rcobsdispatcher start
rcobspublisher  start
rclighttpd start

So you can teach your OBS build packages for new distribution.

Of course a new OBS 2.2.96 (from Tools:/Unstable/openSUSE_11.4) has many sweet and interesting things which I also want to have at home. But at work, where stability is most important, I “update” OBS also like this.
Good luck and happy packaging 😉

openSUSE ART :: Release party poster

Posted in openSUSE by anaumov on 24.10.2011

Actually I’m not a designer and such tools like GIMP or Inkscape are terra incognita for me. But if you are going to organize the Release Party you MUST be designer a little bit 🙂
(thanks for helping my colleague Valentyn).

16th November at 19 o’clock just follow us in Nautibar (Theaterstraße 8, Göttingen).

Dark fresh beer, kicker and openSUSE 12.1 wait for you 😉