May 17, 2012

Nicu Buculei — Kindergarden Linux

I get approached with the classic question "will Fedora X (16 in this case) run on my PC?" Sure, why not, the user has a P4 class computer with enough RAM. Then the next question, equally classic "what should I run, 16 or Ubuntu 11.10? or any other alternative?". My honest answer is as a Fedora contributor I obviously prefer Fedora, but the best distro may depend on the user's needs. Time to learn he does Ruby programming and some internet navigation. Then I guess trying a live image can't hurt and the ultimate choice, as as a desktop user, would be drawn from the desktop environment: Unity/Gnome Shell/KDE/Xfce.

But it seems me saying "contributor" triggered a "last question", "what means being a contributor to Fedora?" and then I expand, talking to various types of contributions, from packaging to programming or administration, drop a link to the join page and so on. After we clear the part about money (Fedora is Free project based on volunteering) I get another one, about the age limit... and learn my interlocutor is 13. Well, he can be a contributor, we had and have other underage contributors, but he has to understand the consequences of using a Free license and his parents must allow it. He things translations may be a good starting point. And may do some design, based on previous experience with Illustrator and Photoshop.

After a short "what is better, Linux or Windows?" (it depends on your needs, freedom versus Diablo III) there is one more issue, the actual install, even if is just running a live image (he prefers CD over USB, despite my arguments for the contrary). So I have to give an explanation about what a live image is, how a device will be booted and won't affect the installed system, even what BIOS is and how you change the boot order (he never entered the BIOS setup before). All while insistently asked for my phone number, which I refuse to give away.

Fast forward one day, it seems like trying Fedora 16 Live was a failure: he gets a wallpaper and a mouse cursor, nothing else. I am showing a random screenshot from the web, trying to understand if he has a normal GNOME Shell empty desktop or is a deeper problem and this drives me to a large explanation on what GNOME, Unity, KDE, Xfce, LXDE are (and a statement of my desktop preference). I am asked again about my phone number and ignore the question. Then he wants to give Ubuntu a try, I don't have a problem with that but he has: the same empty desktop with no panel, no right-click menus, no nothing. If is not the display, then it may be video drivers (ATI), so I recommend either a newer Fedora (F17 RC1 is online) or VESA parameters for boot (me blaming AMD).

But this will happen another another day, today he has an important math test at school. Not before being asked again for my phone number (no, I won't be available this evening and in the week-end will be away in a photography trip) and since the download folder for F17 RC1 isos have two files, Desktop and KDE, I am supposed to recommend one. I can't, so I am ambiguous. To be continued.

Speaking about phone numbers, is not wise to give them easily... I gave my number recently to an another possible contributor under promise it will be used only for emergency (he's slightly older, at the age of 16, and a bit more experienced, with actually having run Ubuntu and Fedora before) and now I am called even for spam alerts or Deep Freeze problems, no matter the hour or the day.

PS: I am not even an Ambassador

de Nicu Buculei (noreply@blogger.com) în data de May 17, 2012 09:47 AM

May 13, 2012

Răzvan Sandu — An Invitation to “Informatica la Castel”, 2012 Edition - a Romanian Free Software Summer School


I am pleased to announce that, in 2012, the Romanian annual event of “Informatica la Castel” (“Informatics at the Castle”) will be held in August 27th - September 1st. Both international and Romanian speakers and guests are kindly invited to submit their registration for participation.




Already a tradition in the Romanian IT landscape, the event is organized and kindly hosted by the Universitatea de Vest “Vasile Goldiș” (The “Vasile Goldiș” West University) of Aradand ArLUG, the local Linux User Group.

For the summer school, the main focus is to bring together the various Romanianand international GNU/Linux communities (computer geeks and programmers), as well as wannabe GNU/Linuxusers, newcomers, students, teachers, public clerks, Romanian officials, lawyers, doctors, etc. Every person that uses a computer in day-to-day life (for professional or personal matters) is invited to consider the benefits of Free Software, to improve his/hers computer skills, to learn from more experienced users and to make new friends, by meeting interesting and enthusiastic people in a friendly environment. Last but not least, teachers are encouraged to use more Free Software in class, especially as Virtual Learning Environments – such as http://edu.moodle.roMoodle platform, kindly offered to the Romanian schools (and supported locally) by Moodle Romania.

One of the keys of success for the school is the natural landscape of the place where the proceedings are held. Very close from the Hungarian border, the 18th century Cernovici Castle of Macea, as well as the surrounding „Pavel Covaci” Botanical Garden offer a relaxing, student camp-like environment, with Transylvanian local traditions, very pleasant for fine academic talks, long walks and making new friends.



You may see other informations, including a few pictures from the 2011 edition, here.

We are anxious to meet you, both Linux beginners or computer gurus !

Event information and schedule

Time: August 27th - September 1st, 2012
(GPS position N 46.38448 / E 21.31015)
Contact e-mail:informatica [AT] uvvg [DOT] ro
Registration: REQUIRED, please register ASAP. Please create yourself a free account on the website and contact organizers via e-mail (attn. Prof. Antoanela Naaji or Prof. Mihai Jalobeanu).
Costs of participation: accessible to students :) . Please contact organizers for details.


de Răzvan Sandu (noreply@blogger.com) în data de May 13, 2012 01:02 PM

May 11, 2012

Fedora Romania — fedoraproject.ro: Strangere de fonduri

Comunitatea ArLUG încearcă să adune fonduri pentru a putea să cumpere componentele care să le permită să înlocuiască actualul hardware pe care rulează mirror.arlug.ro, hardware care începe să-şi arate atît uzura morală cît şi uzura fizică acumulată pe parcursul ultimilor 5 ani de funcţionare neîntreruptă.

Cine doreşte să contribuie o poate face pe thread-ul iniţial, deschis pe mailing-list-ul ArLUG, poate fi accesat : https://groups.google.com/forum/?fromgroups#!topic/arlug/Z3uemVloGG8

Știri
May 11, 2012 12:27 PM

Nicu Buculei — Vienna wallpapers

When dumping a set of photos from Vienna I promised I optimize a few of them as wallpapers, today is the time do deliver. You can use them freely. (click for full-size view)

Bonus: Supermoon

Also while in Vienna I encountered the supermoon (the big full moon, 14% bigger, which happens very rarely), I caught a picture with the best my gear can deliver (70-200 lens with an X1.4 zoom adapter on an APS-C sensor) at 100% zoom level, free for re-use.

Bonus: Graffiti

While wandering around Vienna I saw this anarchist graffiti which I think is meaningful and more applicable in those days: when a system is broken so badly, there is no chance to repair it, then nuke it from the orbit.

PS: unrelated, when preparing the pics above, my Fedora desktop gave a "Windows moment" - the mouse cursor changed the shape to "wait", trying to make that go away and get a normal "arrow" pointer, I closed a very busy web app. As nothing good happened, closed GIMP where I worked on the pics. Then the entire X.org sesion crashed to a black screen (together will all my open apps) and the desktop restarted itself.

de Nicu Buculei (noreply@blogger.com) în data de May 11, 2012 09:35 AM

May 09, 2012

Nicu Buculei — LGM 2012 + Linuxwochen Vienna: photo dump

As after any conference I take part of, also for Libre Graphics Meeting and Linuxwochen in Vienna I put my pictures in a quick and simple gallery, so anyone who want to use them is able to do it freely. This time there is not a lot of pictures (I get picky and picky in time before pressing the shutter), but at least I didn't forget to say about the CC-BY-SA in the page footer, so people don't have to ask for permission.

lgm
lgm

I also spent some time in the city and took some photos of the architecture, streets, people, gardens, life and so on:

vienna

I am a kid inside, so when going to Vienna I can't miss the Prater amusement park, which is a lot of fun and a place to take nice pictures.

lgm

Next, I think I will made a few wallpapers based on Vienna photos.

de Nicu Buculei (noreply@blogger.com) în data de May 09, 2012 09:47 AM

May 07, 2012

ROSEdu techblog — GNU Make

In working with large projects it is necessary to compile from multiple sources. Since this is quite difficult, different tools have been developed to make this task easier. One such tool is GNU Make and the associated executable is make. Make solves compilation from multiple sources problem using the dependency relationships between them, described in a special file usually called Makefile.

Syntax

The file which describes the dependency relationships between project’s sources. It should be named Makefile or makefile and has the following syntax:

target: dependency_list
<tab>command

Usually, the target’s name matches the name of the resulted file, except only those which are .PHONY targets, called virtual targets (they do not generate a specific file). List dependencies include dependencies that are required for target execution. Usually, there are files from which the target will be built. A common mistake is that spaces are used instead of TAB. This will result in an error message when running make. An example Makefile is:

exec:
	gcc foo.c bar.c main.c -o exec

This is not the best way we can use make because it doesn’t describe any dependencies, so every time we run make it will run gcc foo.c bar.c main.c -o exec, even if there are no modified sources. Better use is the following example:

exec: foo.c bar.c main.c
	gcc foo.c bar.c main.c -o exec

In this case the target exec will run only if a source has changed. Neither this case takes full advantage of the facilities make offers, because modifying a single source leads to compiling all the existing sources. An ideal Makefile describes the lowest level possible dependencies. In our case it is the object file:

exec: foo.o bar.o main.o
	gcc foo.o bar.o main.o -o exec
foo.o: foo.c
	gcc -c foo.c -o foo.o
bar.o: bar.c
	gcc -c bar.c -o bar.o
main.o: main.c
	gcc -c main.c -o main.o

How it works

A particular target is executed by running make target. If there is no argument, it will execute the first target described. To execute a target all of his dependencies must be satisfied. For our example, exec target is executed only after foo.o, bar.o, main.o, which are conditioned by foo.c, bar.c, main.c, are obtained.

Variables

In Makefile files we can declare variables to replace commonly used sequences or which are changed frequently. The variables’ values are obtained using the character $: $(variable_name). For the example above, let’s suppose that one of the source files uses functions from math.h. We will declare a variable that is meant to specify that for linking:

LDFLAGS=-lm
exec: foo.o bar.o main.o
	gcc $(LDFLAGS) foo.o bar.o main.o -o exec
foo.o: foo.c
	gcc -c foo.c -o foo.o
bar.o: bar.c
	gcc -c bar.c -o bar.o
main.o: main.c
	gcc -c main.c -o main.o

Make offers several predefined variables, of which the most important are:

  • $@ - target’s name
  • $^ - dependecies list
  • $< - the first dependencie

The Makefile above can be written in a more simple way:

CC=gcc
LDFLAGS=-lm
exec: ana.o are.o mere.o
	$(CC) $(LDFLAGS) $^ -o $@
%.o: %.c
	$(CC) -c $< -o $@

Variables in a Makefile can also come from the environment where make is running. While running, make sees each environment variable as a local variable with the same name and the same value. Thus, assigning a value for LDFLAGS variable in the example above can cause changes to any compile command. To convert a local variable in an environment variable in order to use it in other Makefile files we use the export directive:

export variable

Inverse transformation is done using unexport:

unexport variable

.PHONY target

If we want a target to be marked permanently as out of date we will use the .PHONY target. Let’s consider that there is a pack target that creates an archive which contains the project’s sources. If there is one source named pack and it does not change, the command associated with this target will not be executed. For this we use .PHONY. Also, by convention all Makefile files contain a .PHONY target called clean used to delete the files obtained from compiling or running the program.

.PHONY: pack
pack:
	zip -r project.zip *
clean:
	rm *.o *.zip exec

Implicit Rules

Make allows us to use a simplified syntax. For example we don’t always have to write a command for some targets. This is called an implicit rule:

ana.o: ana.c

Another implicit rule is that when running the command make source.c, the file source.c will be compiled even if there is no Makefile. Implicit rules use the environment variables. Thus, the example considered by us is equivalent to:

ana.o: ana.c
	$(CC) -c $(LDFLAGS) ana.c -o ana.o

Because implicit rules use environment variables, it is easy to modify their behavior by a simple change of the variables’ values.

Final touches

In many cases, the first target in a Makefile is a target that compiles all of the sources. It is very useful because we don’t have to specify a target every time we are running make.

Adding these changes to our example we get a complete Makefile:

CC=gcc
LDFLAGS=-lm

all: exec

exec: ana.o are.o mere.o
	$(CC) $(LDFLAGS) $^ -o $@

foo.o: foo.c
	gcc -c foo.c -o foo.o
bar.o: bar.c
	gcc -c bar.c -o bar.o
main.o: main.c
	gcc -c main.c -o main.o

.PHONY: clean
	rm -rf *.o exec
May 07, 2012 09:00 PM

May 06, 2012

Eddy Petrișor — Homeopathy, there's nothing in it, but is expensive

To add insult to injury, homeopathy is not only inefficacious, it's expensive, too.
A whole pack of an absurd dilution of a non-existent thing is the most expensive product on that advertising. Are we living an an age of insanity or what? If you want to know what really is homeopathy and why is dangerous, you can read here.
de eddyp (noreply@blogger.com) în data de May 06, 2012 02:47 PM

May 05, 2012

Nicu Buculei — LGM 2012: final day

We are on the final (fourth) day of the Libre Graphics Meeting 2012, the conference continues. Yesterday evening was the "social event" for Linuxwochen, which was joined (and overrun) by LGM participants.

lgm

Speaking of Linuxwochen, I see here in the university building today is the "BSD day".

lgm

So the place was pretty much invaded by red devils.

lgm

And today I noticed the FSF presence with a booth (I am pretty sure I didn't see them in the first day... well, I did't see Open Street Map either in the first morning when I did a photo tour, but I saw them a couple hours later).

lgm

Back to LGM, this morning program started and is full of shiny looking presentations from Krita and Synfig Studio.

lgm
lgm

At noon there is a workshop which I think it may be interesting, Sirko will demo about preparing for print a book/magazine, is an area where I lack experience.

de Nicu Buculei (noreply@blogger.com) în data de May 05, 2012 08:58 AM

May 04, 2012

Nicu Buculei — LGM 2012: GIMP awsomeness

Blown away during the Libre Graphics Meeting GIMP/GEGL presentation: GIMP 2.10 is going to kick ass (GEGL integration will provide a lot of nifty features).

lgm 2012

Certainly, GIMP developers are doing the $DEITY's work!

lgm 2012

de Nicu Buculei (noreply@blogger.com) în data de May 04, 2012 10:53 AM

Nicu Buculei — On spherical Cows

Despite the significant amount of votes I see a lot of attacks on Spherical Cow (the release name for the future Fedora 18) and I can't stop the paranoid in my from asking if this was a vote from those not wanting a code name at all (select a ridiculously looking one so it's easier to root against the idea) or if it was a slap in the face for de Indian community after complaining so much about cows in Beefy Miracle (I also thought that much complaining was misplaced, but in the end voted for Tandoori Chicken).

The anti-paranoid in me reminds the release names are supposed to be fun and that Spherical Cow has scientific roots, even if until recently I wasn't aware of that.

In the meantime can I just say "Moooo" and return to LGM?

de Nicu Buculei (noreply@blogger.com) în data de May 04, 2012 10:09 AM