273
I Use This!
Activity Not Available

News

Posted over 12 years ago
Hi All, Actually this report is 2 days late, those who have already added my repository and updated it should have the sax3-touchpad module. For others, you can get it here http://download.opensuse.org/repositories/home:/manugupt1/ From now on, I ... [More] will focus a lot on fixing issues and polishing the UI, specially the touchpad one and yes offcourse clean some code. I have moved to code.google.com but the transition is not complete yet [Less]
Posted over 12 years ago
Some time ago I wrote a blog post about osc in Gentoo. As I already stated there, we’ve got some pretty cool technologies in openSUSE and I would like to promote them everywhere. And as I’m also partially Gentoo user and I have many Gentoo friends ... [More] , I’m trying to make some of the coolest openSUSE technologies available on Gentoo. One of the cool things we’ve got is libYUI. What is libYUI? As name suggests, libYUI is a library. It is yet another graphical toolkit you can write your application in. Why is it cool and not lame? Because it is actually abstraction over already existing toolkits. You can write application using libYUI, compile it and run it and depending on what you have installed. During runtime, it will select the best toolkit available. There are currently three different plugins for libYUI. Qt, GTK and ncurses. And depending on what you have installed, application can behave like native Qt application to fit nicely into your KDE environment or behave like GTK application to fit Gnome/Xfce. And it can even look like ncurses application, so you can run it on your server without X! Isn’t it awesome? All this just from one code. This library was originally created for YaST, openSUSE configuration utility. But this summer, one of our GSoC project was to make it independent of YaST and openSUSE infrastructure. If you are interested in current progress of this GSoC project, you can read blog posts by N.B.Prashanth. He is not only making it openSUSE independent, but he is also fixing documentation and creating examples, so you can start using it much easier! So now you all know, that libYUI is cool, right? And that it is no longer openSUSE specific technology and you can start using it for any project you like. Here comes my little contribution. From Monday, libYUI is part of Gentoo portage tree as x11-libs/libyui. Currently only available for ~amd64, but ebuilds are there, you can unmask it on other architectures and you’ll see. If it doesn’t work, file a bug report I tried it to run SaX3 on Gentoo and it works So if you are going to write an application that can make a use of both ncurses and graphical interface, check out libYUI, it can make you life easier [Less]
Posted over 12 years ago
Thanks to everyone who attended my talk during the Desktop Summit! I hope you enjoyed it as much as I did preparing it. The slides are now online: Software that has the Quality Without A Name (ODP). ... [More] The presentation is heavy on pictures and light on text, but there are rather extensive notes which you can read by scrolling down each page. The destruction of human space The Pergamon Museum in Berlin hosts extremely impressive things: the Ishtar Gate from the city of Babylon, the Pergamon altar to Telephus, the Market Gate of Miletus... all of them major architectural works. The building of the museum itself is a nice, neo-classical building. This is what it used to look like, courtesy of Wikipedia. Looking at that central courtyard, you can see that the museum has two wings plus a central building that connects them. That central section has big letters that tell you the name of the museum. And then the modernists took over. This is the monstrosity they are building now: Apparently a 360-degree screen was enough justification to destroy the nice space that the courtyard used to provide. And you cannot see the museum's name anymore - the big metal cylinder obstructs it. [Less]
Posted over 12 years ago
Doing a live upgrade in openSUSE to the latest version has certain advantages: You only download the packages that need to be upgraded, saving a lot of bandwidth. During the upgrade you can still use your system (although this is not recommended); ... [More] the only downtime will be the reboot after the upgrade. You do not have to write an ISO image to a DVD. You could also boot from 1) the Internet; or 2) a USB key, and install the rest from the Internet The disadvantages: If, for any reason, the upgrade is interrupted (e.g., power outages, network disconnect) and the process can’t continue, you could be left with a broken system (that depends on where the process stopped, of course). If you have multiple systems to upgrade, you consume bandwidth each time, which is less efficient than downloading an ISO image. The upgrade can be done on the command line or via the YaST module Wagon (if you are on an OpenSUSE desktop). Since the Wagon method is less tested than the command line update, we will use the command line method here for both servers and desktops. 1. Install the latest updates Before doing the distribution upgrade, install the latest updates for OpenSUSE 11.3. Open a terminal and run $ sudo zypper repos --uri to check what repositories are used and enabled on the system. Make sure that the line that contains http://download.opensuse.org/update/11.3/ in the URI column reads “Yes” in the “Enabled” column: # | Alias | Name | Enabled | Refresh | URI ---+-------------------------------------+-------------------------------------+---------+---------+-------------------------------------------------------------------------------------------- 1 | Packman Repository | Packman Repository | Yes | Yes | http://ftp.uni-erlangen.de/pub/mirrors/packman/suse/openSUSE_11.3 2 | Updates for openSUSE 11.3 11.3-1.82 | Updates for openSUSE 11.3 11.3-1.82 | Yes | Yes | http://download.opensuse.org/update/11.3/ 3 | devel_languages_ruby_extensions | Ruby Extensions (openSUSE_11.4) | Yes | No | http://download.opensuse.org/repositories/devel:/languages:/ruby:/extensions/openSUSE_11.4/ 4 | google-chrome | google-chrome | Yes | Yes | http://dl.google.com/linux/chrome/rpm/stable/i386 5 | openSUSE-11.3 11.3-1.82 | openSUSE-11.3 11.3-1.82 | Yes | No | cd:///?devices=/dev/sr0 6 | openSUSE:Tools | openSUSE:Tools | Yes | Yes | http://download.opensuse.org/repositories/openSUSE:/Tools/openSUSE_11.3/ 7 | openSUSE_Tools | openSUSE.org tools (openSUSE_11.3) | Yes | No | http://download.opensuse.org/repositories/openSUSE:/Tools/openSUSE_11.3/ 8 | packman | Packman repository (openSUSE_11.3) | Yes | No | http://packman.inode.at/suse/openSUSE_11.3 9 | repo-debug | openSUSE-11.3-Debug | No | Yes | http://download.opensuse.org/debug/distribution/11.3/repo/oss/ 10 | repo-non-oss | openSUSE-11.3-Non-Oss | Yes | Yes | http://download.opensuse.org/distribution/11.3/repo/non-oss/ 11 | repo-oss | openSUSE-11.3-Oss | Yes | Yes | http://download.opensuse.org/distribution/11.3/repo/oss/ 12 | repo-source | openSUSE-11.3-Source | No | Yes | http://download.opensuse.org/source/distribution/11.3/repo/oss/ 13 | ruby-devel | ruby-devel | Yes | No | http://download.opensuse.org/repositories/devel:/languages:/ruby:/extensions/openSUSE_11.3/ 14 | server-database-unstable | server-database-unstable | Yes | Yes | http://download.opensuse.org/repositories/server:/database:/UNSTABLE/openSUSE_11.3 If the line reads “No” in the “Enabled” column, enable the repository as follows: $ sudo zypper modifyrepo --enable #Alias_name If there’s no repository with the URI http://download.opensuse.org/update/11.3/, then add the repository: $ sudo zypper addrepo --check --name 'openSUSE-11.3-Update' http://download.opensuse.org/update/11.3/ repo-update Now, install the latest updates: $ sudo zypper refresh Repository 'Packman Repository' is up to date.Repository 'Updates for openSUSE 11.3 11.3-1.82' is up to date.Repository 'Ruby Extensions (openSUSE_11.4)' is up to date.Repository 'google-chrome' is up to date.Repository 'openSUSE:Tools' is up to date.Repository 'openSUSE.org tools (openSUSE_11.3)' is up to date.Repository 'Packman repository (openSUSE_11.3)' is up to date.Repository 'openSUSE-11.3-Non-Oss' is up to date.Repository 'openSUSE-11.3-Oss' is up to date.Repository 'ruby-devel' is up to date.Repository 'server-database-unstable' is up to date.All repositories have been refreshed. And $ sudo zypper update Loading repository data...Reading installed packages... The following package updates will NOT be installed: gpg2 gstreamer-0_10 gstreamer-0_10-plugin-gnomevfs gstreamer-0_10-plugins-base k3b k3b-lang kaffeine libassuan0 libgstapp-0_10-0 libgstinterfaces-0_10-0 libgstreamer-0_10-0 libmariadbclient16 libmariadbclient_r16 libmysqlclient16 libsndfile libtag-extras1 libxine1 libxine1-gnome-vfs libxine1-pulse mjpegtools perl-Try-Tiny python-numpy rubygem-actionmailer-2_3 rubygem-actionpack-2_3 rubygem-activerecord-2_3 rubygem-activeresource-2_3 rubygem-activesupport-2_3 rubygem-daemons rubygem-delayed_job rubygem-exception_notification rubygem-libxml-ruby rubygem-rack rubygem-rails-2_3 rubygem-rails_xss rubygem-rake rubygem-sqlite3 taglib The following NEW packages are going to be installed: build-mkbaselibs build-mkdrpms libreoffice-languagetool-en obs-service-download_files obs-service-format_spec_file obs-service-source_validator perl-Package-Stash-XS rubygem-rbx-require-relative The following package is going to be REMOVED: OpenOffice_org-LanguageTool-en The following packages are going to be upgraded: broadcom-wl build chromium-ffmpeg cpanspec dbus-1 flash-player foomatic-filters gimp gimp-help-browser gimp-module-hal gimp-plugins-python glib2 google-chrome-stable icedtea-web inst-source-utils iproute2 kernel-default kernel-desktop libapr1 libapr-util1 libfreetype6 libsndfile libsoup-2_4-1 libxml2 obs-api obs-productconverter obs-server obs-service-extract_file obs-service-recompress obs-service-set_version obs-service-tar_scm obs-source_service obs-utils obs-worker osc osc-source_validator perl-BSSolv perl-Package-Stash perl-Params-Util perl-Parse-CPAN-Packages perl-YAML permissions preload-kmp-default preload-kmp-desktop pullin-msttf-fonts rubygem-columnize rubygem-gem_plugin rubygem-linecache rubygem-mongrel rubygem-ruby-debug rubygem-ruby-debug-base telnet udisks yast2-mail 54 packages to upgrade, 8 new, 1 to remove.Overall download size: 123.6 MiB. After the operation, additional 11.8 MiB will be used.Continue? [y/n/?] (y): y In order to install 'flash-player', you must agree to terms of the following license agreement: Do you agree with the terms of the license? [yes/no] (no): yes Then kick back, and let zypper retrieve and install / upgrade these packages. There are some running programs that use files deleted by recent upgrade. You may wish to restart some of them. Run 'zypper ps' to list these programs. 2. Run the distribution upgrade Now that the latest updates are installed, disable all OpenSUSE 11.3 repositories: $ sudo zypper modifyrepo --all --disable Repository 'Packman Repository' has been successfully disabled. Repository 'Updates for openSUSE 11.3 11.3-1.82' has been successfully disabled. Repository 'devel_languages_ruby_extensions' has been successfully disabled. Repository 'google-chrome' has been successfully disabled. Repository 'openSUSE-11.3 11.3-1.82' has been successfully disabled. Repository 'openSUSE:Tools' has been successfully disabled. Repository 'openSUSE_Tools' has been successfully disabled. Repository 'packman' has been successfully disabled. Nothing to change for repository 'repo-debug'. Repository 'repo-non-oss' has been successfully disabled. Repository 'repo-oss' has been successfully disabled. Nothing to change for repository 'repo-source'. Repository 'ruby-devel' has been successfully disabled. Repository 'server-database-unstable' has been successfully disabled. And enable the OpenSUSE 11.4 repositories: $ sudo zypper addrepo --name "openSUSE-11.4 OSS" http://download.opensuse.org/distribution/11.4/repo/oss/ repo-11.4-oss Adding repository 'openSUSE-11.4 OSS' [done] Repository 'openSUSE-11.4 OSS' successfully added Enabled: Yes Autorefresh: No URI: http://download.opensuse.org/distribution/11.4/repo/oss/ $ sudo zypper addrepo --name "openSUSE-11.4 Non-OSS" http://download.opensuse.org/distribution/11.4/repo/non-oss/ repo-11.4-non-oss Adding repository 'openSUSE-11.4 Non-OSS' [done] Repository 'openSUSE-11.4 Non-OSS' successfully added Enabled: Yes Autorefresh: No URI: http://download.opensuse.org/distribution/11.4/repo/non-oss/ $ sudo zypper addrepo --name "openSUSE-11.4 Updates" http://download.opensuse.org/update/11.4/ repo-11.4-update Adding repository 'openSUSE-11.4 Updates' [done] Repository 'openSUSE-11.4 Updates' successfully added Enabled: Yes Autorefresh: No URI: http://download.opensuse.org/update/11.4/ Now, the repositories look like this: $ sudo zypper repos --uri # | Alias | Name | Enabled | Refresh | URI ---+-------------------------------------+-------------------------------------+---------+---------+-------------------------------------------------------------------------------------------- 1 | Packman Repository | Packman Repository | No | Yes | http://ftp.uni-erlangen.de/pub/mirrors/packman/suse/openSUSE_11.3 2 | Updates for openSUSE 11.3 11.3-1.82 | Updates for openSUSE 11.3 11.3-1.82 | No | Yes | http://download.opensuse.org/update/11.3/ 3 | devel_languages_ruby_extensions | Ruby Extensions (openSUSE_11.4) | No | No | http://download.opensuse.org/repositories/devel:/languages:/ruby:/extensions/openSUSE_11.4/ 4 | google-chrome | google-chrome | No | Yes | http://dl.google.com/linux/chrome/rpm/stable/i386 5 | openSUSE-11.3 11.3-1.82 | openSUSE-11.3 11.3-1.82 | No | No | cd:///?devices=/dev/sr0 6 | openSUSE:Tools | openSUSE:Tools | No | Yes | http://download.opensuse.org/repositories/openSUSE:/Tools/openSUSE_11.3/ 7 | openSUSE_Tools | openSUSE.org tools (openSUSE_11.3) | No | No | http://download.opensuse.org/repositories/openSUSE:/Tools/openSUSE_11.3/ 8 | packman | Packman repository (openSUSE_11.3) | No | No | http://packman.inode.at/suse/openSUSE_11.3 9 | repo-11.4-non-oss | openSUSE-11.4 Non-OSS | Yes | No | http://download.opensuse.org/distribution/11.4/repo/non-oss/ 10 | repo-11.4-oss | openSUSE-11.4 OSS | Yes | No | http://download.opensuse.org/distribution/11.4/repo/oss/ 11 | repo-11.4-update | openSUSE-11.4 Updates | Yes | No | http://download.opensuse.org/update/11.4/ 12 | repo-debug | openSUSE-11.3-Debug | No | Yes | http://download.opensuse.org/debug/distribution/11.3/repo/oss/ 13 | repo-non-oss | openSUSE-11.3-Non-Oss | No | Yes | http://download.opensuse.org/distribution/11.3/repo/non-oss/ 14 | repo-oss | openSUSE-11.3-Oss | No | Yes | http://download.opensuse.org/distribution/11.3/repo/oss/ 15 | repo-source | openSUSE-11.3-Source | No | Yes | http://download.opensuse.org/source/distribution/11.3/repo/oss/ 16 | ruby-devel | ruby-devel | No | No | http://download.opensuse.org/repositories/devel:/languages:/ruby:/extensions/openSUSE_11.3/ 17 | server-database-unstable | server-database-unstable | No | Yes | http://download.opensuse.org/repositories/server:/database:/UNSTABLE/openSUSE_11.3 Search for updated openSUSE 11.4 compatible third-party repositories that you used before and add them. $ sudo zypper addrepo --name <name> <url> <alias> For example, if you used the VirtualBox repository in 11.3, you can enable the VirtualBox repository in 11.4 like this: $ sudo zypper addrepo --name "VirtualBox for openSUSE 11.4" http://download.virtualbox.org/virtualbox/rpm/opensuse/11.4 virtualbox-11.4 (Use values for Name and Alias that are not in use yet.) Be aware that using third-party repositories could increase the chances that the upgrade will not complete correctly. Now, run the full distribution upgrade: $ sudo zypper ref This retrieves the metadata for the 11.4 repositories (i.e., openSUSE-11.4 Non-OSS, openSUSE-11.4 OSS, and openSUSE-11.4 Updates), and builds up caches for those repositories. Retrieving repository 'openSUSE-11.4 Non-OSS' metadata [done] Building repository 'openSUSE-11.4 Non-OSS' cache [done] Retrieving repository 'openSUSE-11.4 OSS' metadata [done] Building repository 'openSUSE-11.4 OSS' cache [done] Retrieving repository 'openSUSE-11.4 Updates' metadata [done] Building repository 'openSUSE-11.4 Updates' cache [done] All repositories have been refreshed. Then, do $ sudo zypper dup This zypper command will download the required packages when it installs them. You may download all packages in advance: $ zypper dup --download "in-advance"   The lengthy output goes like this: The following product is going to be upgraded: openSUSE 11.4 The following packages are going to be reinstalled: bind-libs bind-utils flash-player icedtea-web java-1_6_0-sun java-1_6_0-sun-devel libmariadbclient16 libmariadbclient_r16 libreoffice-branding-openSUSE mozilla-js192 mozilla-xulrunner192 mozilla-xulrunner192-gnome perl-Algorithm-C3 perl-Class-C3 perl-Class-C3-XS perl-MRO-Compat perl-Scope-Guard timezone timezone-java The following packages are going to change architecture: ghostscript-fonts-other i586 -> noarch ghostscript-fonts-std i586 -> noarch perl-Archive-Zip i586 -> noarch perl-Digest-HMAC i586 -> noarch perl-Error i586 -> noarch perl-IO-Socket-INET6 i586 -> noarch perl-IO-Socket-SSL i586 -> noarch perl-libwww-perl i586 -> noarch perl-Net-Server i586 -> noarch perl-Parse-RecDescent i586 -> noarch perl-Pod-POM i586 -> noarch perl-Text-Autoformat i586 -> noarch perl-Text-Reform i586 -> noarch perl-URI i586 -> noarch perl-XML-Writer i586 -> noarch python-iniparse i586 -> noarch . . . 1125 packages to upgrade, 74 to downgrade, 165 new, 19 to reinstall, 99 to remove, 42 to change vendor, 16 to change arch. Overall download size: 982.3 MiB. After the operation, 27.9 MiB will be freed. Continue? [y/n/?] (y): y . . . Then, a bunch of license agreements come up. Press Enter to get to the bottom of the page and type “yes.” In order to install 'openSUSE 11.4' (product), you must agree to terms of the following license agreement: LICENSE AGREEMENT openSUSE® 11.4 . . . In order to install 'fetchmsttfonts', you must agree to terms of the following license agreement: END-USER LICENSE AGREEMENT FOR MICROSOFT SOFTWARE . . . In order to install 'java-1_6_0-sun-devel', you must agree to terms of the following license agreement: Operating System Distributor License for Java version 1.1 . . . In order to install 'java-1_6_0-sun', you must agree to terms of the following license agreement: Operating System Distributor License for Java version 1.1 . . . In order to install 'flash-player', you must agree to terms of the following license agreement: ADOBE® SOFTWARE LICENSE AGREEMENTNOTICE TO USER . . . You can run zypper dup  from time to time to ensure you have the latest available packages from the various repositories that you have enabled. YOU (Yast Online Update) only addresses security updates from the official repositories. Lastly, reboot… and enjoy your new OpenSUSE 11.4 system! - – - – - – - You can also find this post on my other blog. [Less]
Posted over 12 years ago
Broadcom is a real nag. Buying a laptop with Broadcom wireless network card never bothered me until I installed several Linux distros and things started to go less smoothly… especially when you do not have wired ethernet nearby and wireless is all ... [More] you get. On the other hand, installing the Broadcom wireless driver for different Linux distros is a great learning experience. Previously, I talked about how to activate the Broadcom STA wireless driver in Fedora 14. It turns out the activation is slightly different in openSUSE. The following works on openSUSE 11.3, 11.4, Mint 10 Julia, Ubuntu 10.x, Kubuntu 10.x, and LMDE. To make Wi-Fi work in openSUSE 11.4, first download the tarball containing Broadcom’s IEEE 802.11a/b/g/n hybrid Linux device driver from http://www.broadcom.com/support/802.11/linux_sta.php The cards with the following PCI Device IDs are supported with this driver. Both Broadcom and and Dell product names are described. Cards not listed here may also work. BRCM PCI PCI Dell Product Name Vendor ID Device ID Product ID ------------- ---------- --------- ----------- 4311 2.4 Ghz 0x14e4 0x4311 Dell 1390 4311 Dualband 0x14e4 0x4312 Dell 1490 4311 5 Ghz 0x14e4     0x4313 4312 2.4 Ghz 0x14e4 0x4315 Dell 1395 4313 2.4 Ghz 0x14e4 0x4727   Dell 1501 4321 Dualband 0x14e4 0x4328 Dell 1505 4321 Dualband 0x14e4 0x4328 Dell 1500 4321 2.4 Ghz 0x14e4 0x4329 4321 5 Ghz 0x14e4 0x432a 4322 Dualband 0x14e4 0x432b Dell 1510 4322 2.4 Ghz 0x14e4 0x432c 4322 5 Ghz 0x14e4 0x432d 43224 Dualband 0x14e4 0x4353 Dell 1520 43225 2.4 Ghz 0x14e4 0x4357 43227 2.4 Ghz 0x14e4     0x4358 43228 Dualband 0x14e4     0x4359     Dell 1530 To find the Device ID's of Broadcom cards on your machines do: # lspci -n | grep 14e4 Untar the package: $ tar -xvf hybrid-portsrc_x86_32-v5_100_82_38.tar.gz  And build this driver from source: $ make KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd` make: *** /lib/modules/2.6.37.6-0.7-desktop/build: No such file or directory.  Stop. make: *** [all] Error 2 Looks like you yet need to install the proper packages, which will create /lib/modules/”release”/build on your system. Take a quick check on what kernel packages you have: $ rpm -qva | grep kernel kernel-desktop-2.6.37.6-0.7.1.i586 kernel-default-2.6.37.6-0.7.1.i586 So, just install ‘kernel-devel’ (Development Package for building kernel modules to match the kernel): $ sudo zypper install kernel-devel Loading repository data... Reading installed packages... Resolving package dependencies... The following NEW packages are going to be installed:   kernel-default-devel kernel-desktop-devel kernel-devel 3 new packages to install. Overall download size: 20.9 MiB. After the operation, additional 50.0 MiB will be used. Continue? [y/n/?] (y): y Retrieving package kernel-devel-2.6.37.6-0.7.1.noarch (1/3), 7.2 MiB (35.2 MiB unpacked) Retrieving: kernel-devel-2.6.37.6-0.7.1.noarch.rpm [done (66.3 KiB/s)] Retrieving package kernel-desktop-devel-2.6.37.6-0.7.1.i586 (2/3), 7.1 MiB (7.8 MiB unpacked) Retrieving: kernel-desktop-devel-2.6.37.6-0.7.1.i586.rpm [done (71.3 KiB/s)] Retrieving package kernel-default-devel-2.6.37.6-0.7.1.i586 (3/3), 6.5 MiB (7.1 MiB unpacked) Retrieving: kernel-default-devel-2.6.37.6-0.7.1.i586.rpm [done (49.2 KiB/s)] Installing: kernel-devel-2.6.37.6-0.7.1 [done] Installing: kernel-desktop-devel-2.6.37.6-0.7.1 [done] Installing: kernel-default-devel-2.6.37.6-0.7.1 [done] Also, install the GNU Compiler: $ sudo zypper install gcc Loading repository data... Reading installed packages... Resolving package dependencies... The following NEW packages are going to be installed:   binutils-gold gcc gcc45 3 new packages to install. Overall download size: 5.6 MiB. After the operation, additional 18.2 MiB will be used. Continue? [y/n/?] (y): y Retrieving package binutils-gold-2.21-13.1.i586 (1/3), 699.0 KiB (2.8 MiB unpacked) Retrieving: binutils-gold-2.21-13.1.i586.rpm [done (36.0 KiB/s)] Retrieving package gcc45-4.5.1_20101208-9.8.i586 (2/3), 5.0 MiB (15.4 MiB unpacked) Retrieving: gcc45-4.5.1_20101208-9.8.i586.rpm [done (79.7 KiB/s)] Retrieving package gcc-4.5-19.1.i586 (3/3), 4.0 KiB (0 B unpacked) Retrieving: gcc-4.5-19.1.i586.rpm [done (0 B/s)] Installing: binutils-gold-2.21-13.1 [done] Installing: gcc45-4.5.1_20101208-9.8 [done] Installing: gcc-4.5-19.1 [done] Then, run make again: $ make KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd` make[1]: Entering directory `/usr/src/linux-2.6.37.6-0.7-obj/i386/desktop' make -C ../../../linux-2.6.37.6-0.7 O=/usr/src/linux-2.6.37.6-0.7-obj/i386/desktop/.   CC [M]  /home/surfmonkey/broadcom-wl/src/shared/linux_osl.o   CC [M]  /home/surfmonkey/broadcom-wl/src/wl/sys/wl_linux.o /home/surfmonkey/broadcom-wl/src/wl/sys/wl_linux.c: In function ‘wl_attach’: /home/surfmonkey/broadcom-wl/src/wl/sys/wl_linux.c:485:3: error: implicit declaration of function ‘init_MUTEX’ make[4]: *** [/home/surfmonkey/broadcom-wl/src/wl/sys/wl_linux.o] Error 1 make[3]: *** [_module_/home/surfmonkey/broadcom-wl] Error 2 make[2]: *** [sub-make] Error 2 make[1]: *** [all] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.37.6-0.7-obj/i386/desktop' make: *** [all] Error 2 $ ls -l total 1184 -rw-r--r-- 1 surfmonkey users       8 Aug 13 18:22 built-in.o -rw-r--r-- 1 surfmonkey users 1195817 Aug 13 18:11 hybrid-portsrc_x86_32-v5_100_82_38.tar.gz drwxr-xr-x 2 surfmonkey users    4096 Dec 14  2010 lib -rw-r--r-- 1 surfmonkey users    1134 Dec 14  2010 Makefile drwxr-xr-x 5 surfmonkey users    4096 Dec 14  2010 src There is still an error building the driver. The expected wl.ko file wasn’t generated. It turns out there is a compilation problem with kernel versions > 2.6.37. The kernel I have falls right into that range: $ uname -a Linux opensuse 2.6.37.6-0.7-desktop #1 SMP PREEMPT 2011-07-21 02:17:24 +0200 i686 i686 i386 GNU/Linux We need to apply a patch to fix the ‘init_MUTEX’ compile problem on newer (> 2.6.37) kernels. At the top level of the driver source folder  (where ”ls” should show at least src, lib, Makefile), create a file which I named “patch.” Fill in the following lines: --- src/wl/sys/wl_linux.c 2011-05-20 12:07:25.303356739 -0700 +++ src/wl/sys/wl_linux.c.new 2011-05-20 12:07:13.663356735 -0700 @@ -481,9 +481,9 @@ if (WL_ALL_PASSIVE_ENAB(wl)) { #ifdef WL_ALL_PASSIVE spin_lock_init(&wl->txq_lock); #endif - init_MUTEX(&wl->sem); + sema_init(&wl->sem, 1); } if (!(wl->wlc = wlc_attach((void *) wl, vendor, device, unit, wl->piomode, osh, wl->regsva, wl->bcm_bustype, btparam, &err))) { Save it, and go back to the command line: $ patch -p0 < patch patching file src/wl/sys/wl_linux.c patch unexpectedly ends in middle of line Hunk #1 succeeded at 481 with fuzz 1. Try building the driver again: $ make KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd` make[1]: Entering directory `/usr/src/linux-2.6.37.6-0.7-obj/i386/desktop' make -C ../../../linux-2.6.37.6-0.7 O=/usr/src/linux-2.6.37.6-0.7-obj/i386/desktop/.   CC [M]  /home/surfmonkey/broadcom-wl/src/wl/sys/wl_linux.o   CC [M]  /home/surfmonkey/broadcom-wl/src/wl/sys/wl_iw.o   LD [M]  /home/surfmonkey/broadcom-wl/wl.o   Building modules, stage 2.   MODPOST 1 modules WARNING: modpost: missing MODULE_LICENSE() in /home/surfmonkey/broadcom-wl/wl.o see include/linux/module.h for more information   CC      /home/surfmonkey/broadcom-wl/wl.mod.o   LD [M]  /home/surfmonkey/broadcom-wl/wl.ko make[1]: Leaving directory `/usr/src/linux-2.6.37.6-0.7-obj/i386/desktop' Do a quick “ls” to make sure the wl.ko file has been successfully created. $ ls -l total 8100 -rw-r--r-- 1 surfmonkey users       8 Aug 13 18:22 built-in.o drwxr-xr-x 2 surfmonkey users    4096 Dec 14  2010 lib -rw-r--r-- 1 surfmonkey users    1134 Dec 14  2010 Makefile -rw-r--r-- 1 surfmonkey users      42 Aug 13 18:30 modules.order -rw-r--r-- 1 surfmonkey users       0 Aug 13 18:30 Module.symvers -rw-r--r-- 1 surfmonkey users     437 Aug 13 18:30 patch drwxr-xr-x 5 surfmonkey users    4096 Dec 14  2010 src -rw-r--r-- 1 surfmonkey users 3527159 Aug 13 18:30 wl.ko -rw-r--r-- 1 surfmonkey users    4646 Aug 13 18:30 wl.mod.c -rw-r--r-- 1 surfmonkey users   39660 Aug 13 18:30 wl.mod.o -rw-r--r-- 1 surfmonkey users 3488826 Aug 13 18:30 wl.o Now, let’s do a fresh install of the wl driver, since the system was just upgraded live to openSUSE 11.4 and no previous version of the wl driver has been running. First, check if there’s any other driver for Broadcom wireless device on the system: $ lsmod  | grep "b43\|ssb\|wl" $ [blank] Looks good. If any of these are installed, remove them: # rmmod b43 # rmmod ssb # rmmod wl And blacklist these drivers and prevent them from loading in the future: # echo "blacklist ssb" >> /etc/modprobe.d/blacklist.conf # echo "blacklist b43" >> /etc/modprobe.d/blacklist.conf At root, # cp wl.ko /lib/modules/`uname -r’/kernel/net/wireless/ # insmod wl.ko insmod: can't read 'wl.ko': No such file or directory You could skip insmod wl.ko if it doesn’t work. Make sure you’re root “su -“. Otherwise, you’d get this: $ sudo insmod wl.ko root's password: sudo: insmod: command not found Proceed to # modprobe lib80211 # depmod -a # modprobe wl Now, check your Network Manager, and you should see wireless networks immediately. In openSUSE, the module will be loaded on boot. In Mint/Ubuntu/Kubuntu/LMDE, users will need to add it manually in /etc/modules file. - – – – – – – – – - You can also find this post on my other blog. [Less]
Posted over 12 years ago
OpenSUSE 11.4 Review: http://cristalinux.blogspot.com/2011/03/opensuse-114-review.html
Posted over 12 years ago
I wanted to create a flowchart of the autoinstallation process since quite a while. Last week I visited a customer and the question “When do all the scripts actually run?” came up. So I decided that it’s really time now to go through the boring time ... [More] consuming process of drawing a new chart. So here it is. It only reflects the autoinstallation and even there some steps are missing (to keep the flowchart at a reasonable size) but I tried to cover everything that is important to know. I think 99% of the people should find every step they need to know about in the chart – at least that was my intention If anything is missing, wrong or confusing – let me know please. Either in the comments, on the mailinglist or via email to me. You can click on the image for the large version and you can find a PDF version here too. I hope this is helpful but if you are new to AutoYaST and the chart scares you, I can tell you that you don’t have to know or understand every step. You can do a complete autoinstallation with almost no knowledge about what’s going on under the hood as you can see here. P.S.: the flowchart was created with openSUSE 11.4 and SLES11-SP2 on my mind but it’s almost correct for older versions too. I’ll try to keep it uptodate in the future and the latest version can always be found on my SUSE homepage. have fun – Uwe [Less]
Posted over 12 years ago
The 5 Ws of contributing to openSUSE   I'm going to be holding a Bof at the openSUSE Conference all about the 5 Ws of contributing to openSUSE. WTF is it about? Well I'm glad you asked (I don't care if you didn't ask, because I'm going ... [More] to tell you anyway ;-) )My intention is to have as interactive a session possible, I will take on the role of compère and with audience participation I will try and highlight where we have issues both as a project and as a contributor and try and get to some form of resolution even if it is just a plan not an actual fix.So what on earth are the 5 Ws? Well they are Who (would contribute), Why (they would contribute), hoW (they can contribute), What (they would contribute), Where (they would contribute). I would also like to talk about the tools that are available for contribution and how they can be improved.The key factor to this BoF session is audience participation, with out you the community it will be pointless. I want to see old hands and new blood at the session, and be honest. If you have a grievence then air it, if you feel there is a blocker let us know. Conversly if you think something is done right let us know, we are too proud a project & community to give ourselves credit. Everyone needs a bit of a pat on the back once in a while ;-)So please come along and join in the discussion :-)   [Less]
Posted over 12 years ago
I'm back from the desktop summit, back from Berlin. It was an intense event, lots of great people, lots of great content. So I arrived at home tired, but inspired. Read on for my personal conclusion.The conference was excellent. All the presentations ... [More] I saw were of high quality. It also turned out to be exactly the right thing to put everything into one program, independent of affiliation of speakers or targeted community. I enjoyed the opportunity to learn more about some projects I'm usually not following that much. It was also great to have presentations done jointly by people from different communities, like the one from Lydia and Seif, or the upstream/downstream discussion led by Vincent, or the intern show case lightning talks.One of the highlights of the conference was the panel discussion about copyright assignment. It's a complex topic, but the panelists brought up good arguments and lot of food for thought. Mark spoiled his argumentation a bit at the end by introducing his generosity concept. This certainly has its place when talking about motivation in a community, but in the context of legal agreements with companies it's very questionable, if generosity should be a dominant concept. My takeaway from the panel and some other discussions I had at the summit is that KDE e.V. is in a very good position here with the Fiduciary License Agreement, we optionally provide for KDE contributors. This provides a good balance of the different interests and adds safety for contributors and community.The other big thing at the desktop summit was the general assembly of KDE e.V. It was a very focused and organized session. Mirko led it in record time. Lydia was elected as new board member replacing Adriaan, and I was reelected for my third term. In the afternoon we had a good BoF session about KDE e.V. questions, and we had a very good discussion about how to involve more people in KDE e.V. work. There is a lot to do, which is very important to be able to sustain the support for the community, expanding the individual supporting membership program, managing relations to existing and new corporate partners, maintaining our trademarks, keeping up and improving our infrastructure for sprints, membership, and KDE e.V. work, the next Akademy, and much more. We will do a KDE e.V. sprint later this year to get some work done on these topics, and to involve more people beyond the members of the board.The last part of the desktop summit was the workshop week. It was packed. It felt more busy to me than at any previous event. There was a lot going on. The experiment with showing all KDE sprints of the last year in one hour worked well. We had 21 lightning talks and it was impressive to see, what happened there, how many people spend their passion and skills on these focused events. It can't be underestimated how much energy they put into the community, and how much things get done or triggered when you put a bunch of KDE people in the same room for a long weekend. For next year, I'll try to put this kind of session into the main conference program, as it really deserves to be shown to a big audience.Another nice trend from the sprints became more visible. Several people used Kanban as a method to organize, visualize, and track the work done at sprints. Kevin introduced it a while ago, and the feedback to that is very positive. It's a low tech method of managing the activities at a sprint by basically putting sticky notes on a wall. By providing some simple rules for the flow of these sticky notes through the different stages of work being done, and applying constraints to how much work is going on in parallel, it's possible to maintain some good flow. Things get done quicker and it's easier to adapt to new things coming up. I think Kanban works best for the longer sprints, where you have more than just two short days on a weekend, but it's certainly worth experimenting with it as it's designed to adapt to different needs by modifying the rules and constraints as needed.Finally I noticed two trends, which I really welcome. First is that there seems to be a growing interest in usability and design. We had design keynotes. It was said in many talks that people were looking for more involvement with designers. Technologies like QML provide new ways to involve designers and design thinking. There were usability BoFs and lots of discussion about how to better address users's needs. The second trend is that there seems to actually emerge a convincing story for KDE on devices beyond the desktop. Plasma Active is spearheading this, and many people are able to contribute there now with the ExoPCs Intel gave out for development. It could be called a mobile story, but it's more than that, because many of the concepts work on desktops as well, so it's rather about addressing the spectrum of devices we are talking about for quite a while now. This goes well with the first trend about focusing more on design, as we are exploring areas, where there don't exist many strict concepts about how to do things, and it could be seen as closer to the user as some of the other areas we are active in. Lot's of interesting stuff is happening here. I'm looking forward to what we will be able to come up with in the next future.Last but not least I was really impressed by the work of the volunteer team. They did an amazing job in making the event run very smoothly. This, together with a great venue and the support of the university, the city, and all the sponsors, provided the perfect environment for the community to have a productive and enjoyable time. The volunteer team also showed how much we can reach, when KDE and GNOME people are working together. It sets a high bar for future events. Thanks a lot to everybody involved. [Less]
Posted over 12 years ago
Recently I had to configure a serial over lan (SOL) console on a bigger Supermicro server (2042G-TRF for those who are interested) that should run Xen. This turned out to be not too easy and several issues had to be resolved. The first thing I had to ... [More] do was an upgrade of the BIOS. The original BIOS shared the IPMI IRQ with serial console0. This resulted in scrambled console output, regardless what I tried to do. Current BIOS versions put IPMI on IRQ 5. Before you try anything, make sure that you do not share IRQs between IPMI and a real serial console. Then I tried to add COM3 to the console list of Xen. Unfortunately, there is no warning that Xen supports only two serial consoles, which are COM1 and COM2. The console just won’t work. Luckily, there is this nice manual to be found at: /usr/share/doc/packackages/xen/pdf/user.pdf In there, there are lots of parameters, and also a somewhat sparse description of how to setup the serial console. It turned out, that I had to reconfigure COM2 (likely COM1 would also have worked) to different IO and IRQ. To get the current values of IO-Port and IRQ, either look into the BIOS and write down the values there, or run a default kernel without Xen and run the following command: dmesg | grep ttyS2 The result should look similar to this: <6>[   10.232117] 00:09: ttyS2 at I/O 0x3e8 (irq = 5) is a 16550A This means, we need to set COM2 to IO-Port 0x3e8 and to IRQ 5. The only thing that is now missing is the serial line speed and mode of the serial connection. In my case, I chose a baud rate of 115200,8n1 for the connection. Now lets put all of this together. First is the grub configuration. This is twofold. Part one is configuring grub in a way that it is also displayed in the serial console. Commonly, this is done in the global section at the beginning of /boot/grub/menu.lst : serial --unit=2 --speed=115200 terminal --timeout=8 serial console Unit 2 specifies the third (start counting at 0) serial console. Part two of the grub configuration affects the Xen section. There, add the console parameters like this: kernel (hd0,0)/xen.gz console=vga,com2 com2=115200,8n1,0x3e8,5 module (hd0,0)/vmlinuz-2.6.32.43-0.13-xen root=/dev/md1 console=tty0 console=xvc0,115200 In my case, we have root on a mirrored raid, you just have to add the console parameters and com2 parameter to the configuration file. Note that the last console that is in the module line is considered the system console by the kernel. To make all of this permanent and survive the next kernel update, also add the parameters to /etc/sysconfig/bootloader: XEN_KERNEL_APPEND="console=tty0 console=xvc0,115200" XEN_APPEND="console=vga,com2 com2=115200,8n1,0x3e8,5" Again, your options may vary. The last configuration to be made is activating a getty for xvc0. This is accomplished in /etc/inittab. Search for a line starting with ‘#S0′. There add a line like the following: S0:12345:respawn:/sbin/agetty -L 115200 xvc0 vt102 After doing all of this, you are ready to test your SOL console. For me, the following command works nicely: ipmitool -I lanplus -H <IPMI-IP-Adress> -U <IPMI-User> sol activate [Less]