Nowruz Gift: Yum Fast Downloader 0.6.0 Released!

Happy Nowruz!

Gladly, I was able to devote some time to update yum fast downloader plugin to work much better with recent yum versions in Fedora 19/20. The plugin effectively disabled delta rpm support since the integration of presto into yum. To fix the issue, I reworked the plugin using the new download framework of yum/urlgrabber. The result is yum-fast-downloader plugin for Fedora 20, which not only fixes the problem but also brings better integration. As a result, the plugin is now responsible for almost all downloads including downloading drpm packages.
Besides, it is now possible to specify arbitrary command line arguments (e.g. -q) for aria2c in the plugin’s configuration file. Unlike previous versions, in this version download of multiple files in parallel are handled by multiple instances of aria2c; but I’d like to change it back to a single aria2c instance in future. I’ve added the new version for Fedora 20 in the repo, but not for Fedora 19. It should work on Fedora 19 too, but I have not tested it. If you tried YFD 0.6.0 in Fedora 19 successfully, please let me know so that I’ll add the new version to F19 repo too. Thanks!

What about DNF?
DNF looks promising. It is much faster than yum, and even uses xml metadata rather than sqlite ones which are smaller. However, it’s internal structure is completely different from yum, so it needs a completely new plugin. I’m still not sure if it is possible, but I’ll try in future. :)

Parsidora 18

Finally, the fifth version of our Fedora remix, Parsidora 18, is released. Parsidora is our Fedora remix specially targeted for users which don’t have fast and/or cheap internet connections, and for Persian users. It also tries to provide a painless out of the box experience for users.

Parsidora differs with most other Fedora remixes in two points: 1. Its images are big, as we try to use all the space available in a DVD. 2. It is (mainly) provided as installation media, rather than live media.
It is actually what an offline user would/should prefer. Such users usually don’t download Fedora, and try to grab its media physically. Therefore, when more packages are available on media, they will be happier since they don’t need to download them. Even downloading the metadata of Fedora repositories is a pain for some users.

It should not be a live distro, because users rarely need to install all the packages and should be able to install only what they need. And it’ll probably need more space in live form. There is an additional bonus: Parsidora DVDs can be used as add-on repository for existing (and not very uptodate) Fedora installations.

Previously, I wrote about problems building updated Fedora 18 installation disks, like what happened for Fedora 17. Unfortunately, I was unable to work around the problem and Fedora doesn’t care much about building updated installation media after the release. Unlike Parsidora 17, this time we decided to release Parsidora 18, without any updates (except some updates from rpmfusion). It is not what we liked, but it is better than not having any release for a long time. I hope that Fedora 19 updates won’t break installation media creation unlike Fedora 17 & 18.

I’m happy that we have a new release. However, I’m waiting for Fedora 19 release to release Parsidora 19 soon afterwards, specially considering the negative effect of Gnome 3.6 on me :P. 3.8 looks a little better at least.

Have fun!

Problems in creating a Fedora installation disk spin (Parsidora)

Parsidora 17 was not released, because fedora installation disks created from Fedora 17 updates repository didn’t work. We decided to skip Parsidora 17 and create Parsidora 18. Parsidora 18 images were ready long time ago, but we have not released it yet. Why? Because if you create an installation disk using pungi (with updates repository enabled), the installer will crash on boot. Unfortunately, the bug is unnoticed after a long time. If you create a Fedora installation disk with release repositories, it works fine but if you try with updates repository enabled, it’ll crash. I’ve tried a lot to find the offending package, but my efforts have been fruitless. I’ve created images with old kernel, anaconda, and even Xorg, but all of them crash.
I’ll try a little longer, but we might decide to release Parsidora 18 with no updates, which is very undesirable. I hope things get better for Fedora 19 and later. :(

Oh, new Solar (Jalali) year has come 13 days ago and we are in year 1392. Happy Nowruz! :)

Happy Nowruz

Happy Nowruz

My Fedora 18 Review, part 2

In my previous post, I talked briefly about Fedora 18 features and then reviewed the new installer. Now, lets review the installed OS.

First Boot

After reboot, grub will be loaded. Finally, grub2 has received some love from the artwork team and you’ll see a graphical Grub2 menu rather than the black and white text menu of previous releases.

After selecting Fedora, plymouth will appear with the same animation of recent releases. I really hope to see some fresh animation in the next Fedora release.

Now, FirstBoot wizard appears and let you do some initial setup like creating users and setting up date and time. In this stage, the keyboard layout switching configuring during installation is active and usable. Therefore, I can write my full name in Persian.

Login Screen (GDM)

GDM appears now. It looks good, but maybe it could get a little more colorful. And it is the first point in which you realize that keyboard layouts doesn’t work as expected any longer. As I mentioned in the installer review, keyboard layout switching does not work out of the box. FirstBoot is the last time that it works fine. GNOME doesn’t honor systemwide settings about keyboard layout switching, therefore you can’t change the layout in GDM or Gnome session with the keys you’ve setup in Anaconda. While Gnome has added a (wrong) layout (while ‘ir’ layout is configured in X, I see ‘af’ layout in Gnome), it has not configured any keys for changing the layout. Unfortunately, this bug is not limited to Gnome: Cinnamon which uses the same backend as Gnome, follows its behavior. KDE also doesn’t honor systemwide settings created by Anaconda. KDE has also added the same wrong layout as Gnome, and you cannot change layouts using keyboard shortcuts too. It might be because of GDM though (Not sure but it might change XKB settings too).

Missing Packages

I logged in into my Gnome 3.6. The first thing to do is to install a number of missing packages. Specially due to the new limited package selection method in Anaconda, there are many missing stuff. I install Thunderbird, liferea, KDE and Cinnamon desktops. I usually like to see what different desktops provide, and considering current Gnome development direction I might consider switching to another desktop more seriously. Anyway, I also install TeXLive. And while it is not announced as a Fedora 18 feature, it really is! Fedora was shipping TeXLive 2007 for years, including Fedora 17. It is a long time that there is a feature in Fedora wiki to update Fedora’s TeXLive stack to more recent versions, but it didn’t make it into Fedora because of both upstream packaging changes and more importantly, the legal problems discovered in TeXLive. You can see how much efforts it needed in its Fedora legal audit page. While the feature is not marked as completed yet, and not announced publicly, Fedora 18 now includes TeXLive 2012, which is great sine it provides many features not available in TeXLive 2007. It’s specially useful to write UTF-8 Persian TeX files using XePersian. For me, it is actually a great feature for Fedora 18!

Gnome 3.6

Now, I’m in Gnome 3.6. It provides a number of new features. For example, new input sources implementation. It provides a number of great features, like the one I mentioned in part1 (typing booster). The message try no longer pops up as soon as your cursor reaches the hot corner, which is a good thing. The corner was really annoying in previous versions when you really didn’t want to see the tray but click something there. Now, you should press the mouse on the bottom of screen for awhile to bring up the tray (or Super+M) which is actually not very convenient, but probably better than before. Also, application menus are used more in Gnome applications, and now you really should now that you can use Super+F10 to bring them up using keyboard. New applications such as Boxes are also provided in this release. I tried Boxes only once (and a little in hurry), but I actually didn’t understand how to use it and controll different aspects of the virtual machine. I’d try again, but I might probably use VirtManager instead.

Some applications, like “Files” (nautilus) have changed a lot. Unfortunately, many features are removed! However, it has some nice new features too. To be honest, I did not used most of the removed features (however I know some people used emblems), and I almost like the new interface. But, there is something that doesn’t feel good in such ‘application menu’ oriented applications: closing them using mouse is not as easy as before, since you won’t see any close buttons. You should select the application menu, and then go for the exit menu entry. IMHO, closing should be more handy.

There are also changes in PackageKit package manager. Initially, I was unable to find the updates settings (I prefer to disable automatic update checking, as it could lock yum for a long time when I need it!). There was no entry in applications list for that. Finally, I find it: you should run “Software” application, open the application menu and select “Software Sources”. Yes, unexpected! And actually, you’ll be presented with Update Settings tab, while the actual Software Sources tab is hidden! The menu entry should be something like “Preferences” I think.

Another inconvenience is with the extensions, which is somewhat usual for ‘extensions’! Many of them doesn’t work in 3.6, and some of them have problems. For example, the places status indicator extensions sometimes fails to start.

As before, Gnome Tweak Tool will be needed by most users sooner or later (and this means that gnome standard settings UI sucks). Unfortunately, some options are no longer available there too! The one I’m concerned about is the settings related to laptop lid close behavior. I want the system to be suspended if I’m on battery, but doesn’t suspend when on AC. It is no longer possible to set it up in the tweak tool. You can disable the suspension completely in systemd-logind settings in /etc/systemd/logind.conf, but it is not what I want. I tried to fix it using the approach I mentioned in this bug report, but it didn’t work (while it should). Currently, it is possible to achieve that manually using systemd-inhibit command, but that’s ugly. I wonder why Gnome guys think they should decide for me. :( I’m a real fan of ‘flexibility’, and Gnome is apparently going in the opposite direction.

Finally, lets return back to keyboard layout switching again. It is the most broken part of Gnome 3.6, and apparently most of it won’t be fixed in 3.6. For Gnome guys, this might not be a huge consideration, but for Fedora, it should be. Since Fedora 18 users are going to use Gnome 3.6 for 6 or 12 months, and keyboard layout switching is a small but highly used feature. If these problems remain in Fedora 18 to the end, I will certainly consider Fedora 18 Gnome experience the worst desktop experience someone (which uses more than one keyboard layout!) might have in GNU/Linux world.

First, keyboard layout switching using shortcuts doesn’t work in many places: lock screen, password asking dialog (e.g. when you ssh), the overview mode and probably some other places I don’t remember. You should change the layout using mouse in these situations. Also, there are no convenient ways to define keyboard shortcuts for GDM. It doesn’t honor systemwide settings, and there are no GUI for setting GDM ones. There is probably some way, but that is not a solution!

Second (very annoying), the switching is SLOW. It seems that it has gotten better with recent updates, but initially, it was terrible. Sometimes it took SECONDS for the layout to be switched. And usually, a few milliseconds. Therefore, if you pressed the switching keys and started to type right after that, a few characters were typed using the previous keyboard layout. As I said, it seems that it is better now with latest updates, but still exists.

Third, if you want to use only modifier keys (e.g. Alt+Shift, Alt+Alt, Shift+CapsLock, etc) for layout switching, you should use gnome tweak tool. The main GUI doesn’t support them in 3.6.

Finally, two of my favorite features doesn’t exist/work. The first and more important one is to switch the layout while some key (e.g. CapsLock) is pressed. It is really useful when you want to write a single word or a few characters in the other layout. It doesn’t exist now. The other one is using a keyboard LED as an indicator. While tweak tool includes the possibility of defining an LED (e.g. CapsLock or ScrollLock leds) to show keyboard layout changes, it doesn’t work.

Well, I think it is enough for now. Fedora is certainly my favorite OS, but it can be much better. I generally like Gnome, but I might gave up working around its “feature removals” in future and switch to another DE and accept the costs of switching.

Update: Forgot to mention that new GTK is more beautiful, specially in Firefox!

Good luck!

My Fedora 18 Review, Part 1

Fedora 18 is finally released! We have waited for this release for a long time, and it is finally out :). It brings many features, some of which I’ve already talked about. I’m going to write my own review of it, and like always I’ll talk about both interesting points and the important or annoying issues I had with it. As it might be long, I decided to divide my review to 2 or more parts, and the first part is what you are (probably!) reading. Typing Booster

Summary

Fedora 18 comes with many features which could be attractive for different types of users. Probably one of the most visible ones is the new installer UI feature which brings a totally new look and feel to Anaconda (Fedora Installer). I’ll talk about the new installer later. SecureContainers allow you to run applications/services in an isolated environment secured by SELinux. Typing Booster continues the work started in Fedora 17 and supports many languages (including Persian!). It provides a kind of predictive text input feature to GNU/Linux Desktop. And since IBus is integrated to GNOME 3.6 in Fedora 18 too, using the typing booster is as simple as adding the predictive layouts (which have ‘hunspell’ in their names, like “Persian – IR (Hunspell)” to the list of Gnome keyboard layouts and using the default Gnome key shortcuts to use it.

Predictive Text Input

Predictive Text Input (Persian)

Typing Booster Keyboard Layout Among Gnome Keyboard Layouts

Typing Booster Keyboard Layout Among Gnome Keyboard Layouts

Another useful feature is System Storage Manager(SSM), which is designed to be a single interface to manage different kinds of storage devices, like traditional partitions, LVM, etc. This is really useful since currently you should learn different tools for each of them separately, which is not that pleasant. When I found that some features have been removed from parted, I felt that I need something like SSM more than ever!

The RealHotSpot feature lets you run a true access point if your wireless card and driver supports. With DragonEgg plugin you can use LLVM’s optimizer and code generators with GCC, which is interesting for developers. Firewalld feature is now more complete in Fedora 18, with support for firewall zones (different firewall settings for different networks). I wonder if NetworkManager can distinguish between different wired networks too, but it would be great if it does (it can do that using the domain name returned by DHCP server, if exists!). And only if it supports different proxy settings for different networks someday… :P.

Offline system updates is another feature, which is something I don’t like much specially if it happens most of the times (when a logout or even closing a single application would suffice!). This is one of the “features” that Windows already has, and I always hated SO MUCH. Fortunately, I usually update using yum, and I hope that it will never enforce offline updates!

Other interesting (in my point of view!) features of Fedora 18 are Active Directory support, DNF package manager, Boost 1.50, Cinnamon and MATE desktop environments, LTTng 2.0, SecureBoot, Samba 4, Syscall Filters, Live Snapshots for Qemu, new version of desktop environments, new version of many programming languages, and Network Team Driver. Like recent releases, Fedora 18 comes with a number of features related to Cloud and Virtualization technologies. Like always, it brings many interesting new technologies with itself. :)

But, is Fedora 18 all about improvements? Nope, there are annoying problems here and there and I’m going to write about them too. However, certainly the first thing someone should read about Fedora 18 problems is its Common Bugs Page.

Fedora 18 Gnome and KDE Live ISOs no longer fit in a CDROM, and should be used with DVD or flash disks. Also, Fedora 18′s installation DVD (which is my favorite option) is considerably larger and almost completely fills a DVD disk (which is not good news for my Fedora remix, Parsidora). Surprisingly, the DVD also lacks a number of software available in previous versions: it doesn’t include full VIM packages, and not even Thunderbird email client. I wonder if they are all intentional, but I hope they come back in Fedoar 19 DVDs!


Installer

Anaconda, the Fedora installer, looks totally different in Fedora 18. Anaconda has always been an advanced installer, and I really liked it. And with a new UI, it now looks good too. However, I should admit that I like some of the mockups much more, specially these mockups with blue theme: user configuration, time and location setup screens, and language and keyboard selection screen. I wonder if they are abandoned or planned for future, but I hope for the latter!

First, you are presented with Language selection screen, and then the network configuration screen. The language selection screen now shows the language names in English and localized forms which are constant regardless of the selected language, which is a good thing since you won’t get lost if you accidentally click on a random language like in previous Fedora releases. Then, the main screen is shown from which you can configure everything:

main_screen

Main Anaconda Screen

And when you are ready, you can start the installation.

Based on the selected language, anaconda will choose a timezone and also keyboard layouts for you. It also configures Alt+Shift for switching between different layouts (if you have not selected to use the local keyboard layout as the default one and there are more than one enabled layouts). Which was just what I wanted! However, after the installation I realized that things are not THAT good!

The first problem is that Anaconda assumes that your system clock shows UTC time, not the local time. And it doesn’t let you change it, since the UI for it has been removed in the new design. Previously, anaconda not only presented a checkbox for us to select if the system clock shows UTC or local time, but it usually could detect the correct settings; non of which works in Fedora 18. I’ve reported this bug, but unfortunately the fix is going to land for Fedora 19. The bug and possible solution is documented in the common bugs page I already mentioned.

The second problem is about keyboard layouts, but it is not related to Anaconda or even the first boot configuration wizard. I’ll talk about it in the next part of my review, but you can read about it here and also in common bugs page.

installation source

Installation Source Selection Screen

Selecting the installation source now can happen inside the main screen of Anaconda, rather than some text mode screens which were not even visible by default if you were using local installation media. It is now much more convenient to use, and also can better present this useful feature of Anaconda which some other installers lack.

pkg_minim

Software Selection Screen

Software selection screen is also changed, and actually changed in a way I really don’t like (at least the current state of it). First, it does not let you choose more than one desktop environments. Second, and probably more important, in many cases it doesn’t let you choose your own desktop environment at all! Consider the above screen shot. If you select the “Minimal Install” option, you can even select Fedora Eclipse, Libreoffice or even Development Tools, but you cannot select the desktop environment you’d like to work in! The same thing happens if you select other options like “Web Server”. Or suppose that you are going to setup a development workstation using KDE. What should you select? A number of development categories are only available if you select “Development and Creative Workstation”, but you cannot select KDE Desktop environment. And if you select KDE, you can not select your development categories like MySQL Development. Therefore, software selection screen really sucks. You cannot select the software you want, so you should probably select KDE Desktop environment, and install development packages manually after installation. Which is far from an ideal software selection method in an installer.

Finally, I discovered a few bugs in Anaconda, but I was unable to report it. Why? Because new anaconda no longer lets you store its bug report in a file to be reported later, and it only can report it online. What if you don’t have an internet connection when you are installing using Anaconda, or if you don’t remember your bugzilla’s username and/or password? Just throw out the report and back trace, anaconda developers don’t want it! And this is exactly what I did since my Anaconda was not online. In previous versions, I usually saved the report in a file and copied it to a removable device and reported it later.

Update: As Adam mentioned, the traceback is already available in /tmp/ directory, so it is possible to switch to virtual terminal and copy the file to a device manually during installation. Only the UI is no longer available since it is automatically saved there.

OK! I think it is more than enough for now. :P

Have fun using Fedora 18!

Parsidora 17 will not happen :(

I have already talked a little about my challenges in creating a Fedora 17 spin. As explained in Parsidora’s official website, unfortunately we decided to drop Parsidora 17 and work on Parsidora 18 instead. However, Parsidora 17 repository is available at the expected address which can be added to an existing Fedora 17 installation and used. Any feedback about the packages in this repo is appreciated, since it can help us fix problems in upcoming Parsidora 18 repository.

 

Parsidora 17?! (or: ongoing problems in creating a Fedora 17 installation DVD spin/remix)

It has been long since Fedora 17 is released, and Parsidora 17 should have been already released. However, I wasn’t able to work on Parsidora when Fedora 17 was released. Later, we had problems with the systems we use to build Parsidora (which should have enough bandwidth and a good internet connection). Our initial plan was to run a Fedora 17 OS on oVirt and build Parsidora in it. However, Fedora 17 didn’t boot on the oVirt we had in a CentOS system. My friend tried to solve the problem and discussed with some relevant sources, but with no success. Finally, we gave up on using oVirt and reverted back to running Fedora 17 on KVM.

I started the work and created initial spins. At first, there was the space problem. The initial ISOs were about 6.5GiB which was much more than the size of a standard DVD. Looks like that Fedora itself is using more space on its installation DVD. After several attempts, and by removing some packages (specially Wesnoth) I was able to reach an acceptable size.

Now, it was the time to test the installation of our new ISO. My friend tested it on KVM and told me that it shows an exception in the early stages. I checked myself, and after some investigation I realized that this is a known bug, which is recently solved and I should update the lorax package of the host Fedora 17 OS.

I updated lorax and some other packages which could affect building a new installation media, and started the process again. When the ISO was ready, I tried to install it under KVM. Fortunately, the exception didn’t happen again, and I was able to proceed in anaconda and let it start the installation. It prepared for the installation and started to install the first package. CPU usage of the virtual machine reached 100% and… nothing else happened. I waited for a long time but it never installed the first package.

I decided to use the installer’s shell to gather some info, but it was not there! After searching in the Internet, I found that it is also a known problem which is solved in Fedora 18, but not for Fedora 17. Using the information given in the bug report, I was able to work around this problem too.

Unfortunately, I still don’t know why the installer is unable to start installing the packages. It might be a KVM only problem, or a general problem. My friend is going to test it on a real machine to see if it is a KVM only (or hardware specific) problem.

I hope that we can find a solution to this problem too. Creating Parsidora 17 has consumed more energy than expected, and its feature is still ambiguous.  While creating a Fedora spin a while after its final release has many advantages, it can be problematic in either building or installer because of some updates which could affect building the spin, or the installer environment (e.g. kernel and systemd).

Update: I forgot to mention the second crash in anaconda which was due to this bug, which is fixed for Fedora 18 but not Fedora 17. I worked around this bug by changing lorax configuration files so that it’ll install hostname package in the installer image.

Well, I just created a new spin with 3.5.6 kernel and latest updates, and the problem still persists. :(

Hope that Parsidora 17 can see the light of the day! :P

Follow

Get every new post delivered to your Inbox.

Join 658 other followers