Tagged: Debian Toggle Comment Threads | Keyboard Shortcuts

  • Akarsh Simha 3:35 pm on December 9, 2010 Permalink
    Tags: Debian, , , ,   

    Context I feared that my 2.5-year old De… 


    I feared that my 2.5-year old Dell Insprion 1525n (yes, it came with no Windows!) was growing weak with "age" (effective age = age * roughness of handling), and therefore, I decided to make use of Thanksgiving deals to get a Lenovo ThinkPad Edge 14".

    My Hell Perspiron (as I nickname it) gets as hot as hell and shuts off with the slightest processor load. Plus, the SATA hard-disk is showing signs of impending gradual failure. So I think it was a good decision anyway.

    First Looks

    From what I hear, this laptop is not really a *ThinkPad* (as in a T-series ThinkPad), but is a ThinkPad nevertheless 😉 — that’s enough.

    So let’s see. I paid $640 + $50 tax + $0 shipping for it instead of the projected price of $1100+ and the "usual" total price of $860. It came via UPS, free shipping.

    Unlike stuff I read online, my laptop doesn’t have a glossy back — no fingerprints etc. I’m not very bothered about the TrackPoint. It kind-of does get into the way, but not much. The keyboard design and feel is extremely good. It feels very nice typing on it.

    However, by default, one needs to hold down the ‘Fn’ key to input F1 thru F12! Without Fn depressed, these correspond by default to mute, change volume, brightness etc. I was really frustrated by this, but a little Googling found me a solution (mentioned later). There’s another thing I do not like: which is that Ctrl and Fn are flipped across from their positions in Dell (and I think most other laptops). But this is a feature of all ThinkPads, it seems. Thankfully, Lenovo has some very nice BIOS options that let you configure these behaviors.

    Installing Debian

    Booting the installer
    During first boot, after randomly answer the Windows configuration questions, it detected my WiFi network and connected. I learned from my friend Kumar Appaiah about UNetBootIn. I had originally planned to follow an article that a couple of us compiled this wiki page. But I gave UNetBootIn a try, and it failed. However, it installed WinGRUB successfully. The kernel refused to load, saying "Invalid file format" or something to that effect. So I got back to Windows and obtained the kernel and initrd.gz for the Debian installer from IITM’s FTP server and booted into the installer as outlined on the wiki page.

    Kumar recommended that I try LVM. So I created a non-LVM physical /boot partition (required), and an LVM physical volume, that I split into several logical volumes. I also left 5 GB in a non-LVM physical partition, just in case. I deleted ThinkPad’s boot drive, which might have been a bad idea :-S.

    Installing Packages
    I used the default mirror in the US: http://ftp.us.debian.org. It turns out that the U of Texas mirror (ftp.utexas.edu) is much faster even when I’m at home.

    Post Install
    Post install, Debian booted into a command-line. It took me a little work to get basic stuff setup (bash completion etc.) and then I installed KDE (aptitude install kde-standard) and booted into it. It turns out that testing now has KDE 4.4.5.

    Here’s the output of lspci on my Thinkpad:

    00:00.0 Host bridge: Intel Corporation Core Processor DRAM Controller (rev 02)
    00:02.0 VGA compatible controller: Intel Corporation Core Processor Integrated Graphics Controller (rev 02)
    00:16.0 Communication controller: Intel Corporation 5 Series/3400 Series Chipset HECI Controller (rev 06)
    00:1a.0 USB Controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 06)
    00:1b.0 Audio device: Intel Corporation 5 Series/3400 Series Chipset High Definition Audio (rev 06)
    00:1c.0 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 1 (rev 06)
    00:1c.1 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 2 (rev 06)
    00:1c.2 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 3 (rev 06)
    00:1c.3 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 4 (rev 06)
    00:1c.4 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 5 (rev 06)
    00:1c.5 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 6 (rev 06)
    00:1d.0 USB Controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 06)
    00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev a6)
    00:1f.0 ISA bridge: Intel Corporation Mobile 5 Series Chipset LPC Interface Controller (rev 06)
    00:1f.2 SATA controller: Intel Corporation 5 Series/3400 Series Chipset 4 port SATA AHCI Controller (rev 06)
    00:1f.3 SMBus: Intel Corporation 5 Series/3400 Series Chipset SMBus Controller (rev 06)
    00:1f.6 Signal processing controller: Intel Corporation 5 Series/3400 Series Chipset Thermal Subsystem (rev 06)
    03:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8191SEvB Wireless LAN Controller (rev 10)
    09:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 03)
    ff:00.0 Host bridge: Intel Corporation Core Processor QuickPath Architecture Generic Non-core Registers (rev 02)
    ff:00.1 Host bridge: Intel Corporation Core Processor QuickPath Architecture System Address Decoder (rev 02)
    ff:02.0 Host bridge: Intel Corporation Core Processor QPI Link 0 (rev 02)
    ff:02.1 Host bridge: Intel Corporation Core Processor QPI Physical 0 (rev 02)
    ff:02.2 Host bridge: Intel Corporation Core Processor Reserved (rev 02)
    ff:02.3 Host bridge: Intel Corporation Core Processor Reserved (rev 02)

    The lines that really matter to me are:

    00:02.0 VGA compatible controller: Intel Corporation Core Processor Integrated Graphics Controller (rev 02)
    03:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8191SEvB Wireless LAN Controller (rev 10)

    The graphics card is not a fancy NVidia, and is at least not an immediate concern. It should work out of the box though. At least I see a graphical display 🙂

    WiFi did not work out-of-the-box. I have an RTL8191SEvB controller, as indicated above (AFAIK, not all ThinkPad Edge 14s have the same). A little Googling pointed me to a blogpost, which pointed me to the RTL8191 drivers on RealTek’s page. I like to use wpa_supplicant, because I’m comfortable with that. So I used wpa_passphrase to generate the configuration for wpa_supplicant, and put that into /etc/wpa_supplicant.conf (created the file). Then, got rid of the network-manager service and ran wpa_supplicant:

    wpa_passphrase essid passphrase

    1. copy-paste output into /etc/wpa_supplicant.conf

    /etc/init.d/network-manager stop
    wpa_supplicant -Dwext -i wlan0 -c /etc/wpa_supplicant.conf &
    dhclient wlan0

    and my WiFi worked. Of course, this is temporary.

    Changing the behavior of Fn key
    A little more Google told me that I could set the behavior of ‘Fn’ keys and swap the ‘Ctrl’ and ‘Fn’ key positions with the BIOS configuration utility. I rebooted, hit ‘Enter’ to get to the BIOS, (Fn +) F1 to edit the BIOS configuration, and went to ‘Keyboard’ to find these relieving options. Changed the behavior of F1…F12 to ‘Legacy’, and swapped the Ctrl and Fn keys. I’m now comfortable!


    The touchpad, on Linux, works just the way I want it to by default — no tap to click; vertical scroll by sliding your finger on the right edge of the touchpad (in Windows, you had to use multitouch by default to do this, which I don’t like).

    First Impressions, Summarized

    So far, I think the Lenovo ThinkPad Edge 14" is a very nice laptop. No complaints at all — it looks a lot sturdier than a Dell Inspiron (like the rest of the ThinkPads), has a matte finish, I could work around my complaints with the keyboard, getting WiFi working wasn’t as bothersome as it usually is etc. The only thing I didn’t like, is that it came with Windows 7 installed and an ugly sticker that proclaims the same.

    • dickfeynman 4:53 pm on December 9, 2010 Permalink | Log in to Reply

      When you wanted to buy a new laptop, why exactly did you go for a thinkpad ? And btw, why not a netbook ?

      • Akarsh Simha 7:05 am on December 18, 2010 Permalink | Log in to Reply

        I generally don’t like Netbooks. They are too small for my fingers. And ThinkPad, because I here it’s the most durable and reliable line of laptops.

    • Kumar Appaiah 2:32 am on December 10, 2010 Permalink | Log in to Reply

      WiFi: Try wicd.
      Swapping function key behaviour etc.: You’re also getting old! 🙂

      • Kumar Appaiah 2:57 am on December 10, 2010 Permalink | Log in to Reply

        To clarify, I meant “old” in the context of “need to use the legacy operations, old style”. 🙂

  • Akarsh Simha 4:59 pm on July 16, 2008 Permalink
    Tags: Debian, preseed, Ubuntu   

    Debian installer for universities? 

    How would it be, if we developed unified Debian / Ubuntu installer addons that would solve all the painful issues that somebody in a campus like ours at IITM faces while installing Debian / Ubuntu?

    I initially had these plans for IITM. Interestingly Ritesh Bhat from NITK had similar plans (and I gave him the scripts I had written). Why not have a community project under a relatively free license where we extend the Debian / Ubuntu installer for institutes, universities and colleges?

    What should such a project do, ideally speaking?
    1. Set up specifics for the campus network. Configure proxy, DNS etc and configure apps to use services available on the local network. Eg: IITM has a local Debian/Ubuntu mirror, so we should use that instead of the default mirrors. NITK has a local Ubuntu cache, so we should be using that instead within NITK.
    2. Configure things that a college student would typically want to configure – GMail chat, IRC (to get help), Firefox web browser etc.
    3. Solve typically faced Windows-compatibility issues – like gstreamer-ugly-plugins, realplayer or NTFS support.
    4. Preseed the Debian Installer, so that we ask only those questions that should really, really be asked.

    Now, this is like converting Linux into Windows! But I think this is the best way to help newbies set up Linux on their systems.

    I notice that most of these scripts are going to be similar across institutes, with only certain settings that need to be changed. I don’t know how far I am right in this. Everyone would want pidgin to be configured, for instance, irrespective of the campus environment. Every campus would have a proxy server, so we would need to configure proxy settings in all cases.

    How much sense does it make, to have a unified framework to do this? Can we open a project on sourceforge? Is there already some project that does this?

    • rohitj 6:00 pm on July 16, 2008 Permalink | Log in to Reply

      Some guys in IITK started working on a similar thing. Mainly, they wanted to fix proxy settings, and all major softwares under one distribution. You may want to contact guys on #navya to get their experience.

    • Kumar Appaiah 12:30 pm on July 17, 2008 Permalink | Log in to Reply

      It would be lovely if you could make this work. Actually, installing Debian is already easy, but this would make it trivial. 🙂

    • Akarsh Simha 3:03 pm on July 19, 2008 Permalink | Log in to Reply

      @rohitj: Thanks. I’ll do that sometime. Who, in particular, are working on this? Is #navya a public channel?

      @kmap: I agree. I want someone to do this instead of me, because I want to work on other things. Besides, testing this is a most painful task, because emulators are rather slow. Most of the scripts seemed to work, IIRC, but they need to be run from /etc/rc.local on first boot.

  • Akarsh Simha 7:39 am on June 12, 2008 Permalink
    Tags: Debian, IRAF,   

    IRAF on Debian from the ESO Scisoft DVD 

    Ok… here’s a short summary of what I did to get IRAF working. I’m using the SciSoft DVD tarball from ESO for IRAF. Yes, this might be a bad idea because you’ll be installing a LOT of other stuff too.

    1. Extract the tarball

    sudo cp scisoft-7.0.0.tar.gz /
    cd /
    sudo tar -xzf scisoft*
    sudo rm scisoft-7.0.0.tar.gz

    2. Run the SciSoft Setup.bash file

    cd /scisoft/bin
    chmod a+x ./Setup.bash
    su -
    . ./Setup.bash

    3. Install ds9

    sudo apt-get install saods9

    3. Prepare to run IRAF
    I do my IRAF work in ~/IRAF and not under a new user account as some manuals specify.

    mkdir ~/IRAF
    cd ~/IRAF
    PATH=$PATH":/scisoft/bin" # Required for SGI EPS export etc
    ulimit -s unlimited # Sets unlimited stack size. Required in Debian too.

    4. Run IRAF 😀

    ds9 &

    This might not work for you, because I might’ve installed some library dependency, or tried some other source of IRAF and might be using that in part. If it doesn’t, please let me know of the corrections through comments.

    HTH. 🙂

    • Daves 2:47 am on April 28, 2009 Permalink | Log in to Reply

      Dear Akarsh Simha,

      Im an astronomy student from Copenhagen, who find your instructions very usefull, and thumbs up for that – is there a possibility you could help me install other programs from the Scisoft.tar? even tho Im stuck at the last part of your guide to IRAF. (point 4)

  • Akarsh Simha 6:04 pm on March 21, 2008 Permalink
    Tags: Debian, Debian Installer, Preseeding   

    Preseeding the Debian Installer 

    KMap happened to mention about preseeding when we were looking for some “automated” Linux installation (and configuration) for the IITM network, so that hostellers in the institute can easily install Linux and start using it straight away.There are a lot of hurdles in the campus network – the Proxy server, restricted NAT access, Proprietary NTLM Authentication for the proxy server, etc – which make Linux installations and configuration of simple utilities under Linux a pain

    So we wanted something that’ll autoconfigure these things. (If you see our Linux Users’ Group mailing list you’ll find many mails about NTLM authorization!) And after KMap explained what preseeding could do, I was hooked on to the idea. (I remember that this happened on the last day FossConf 2008, when we were thinking on these lines, inspired by Mr. Arun Khan whom we all spoke to the previous night.) And finally I caught onto the idea again a week and a half. Varun and I did some web-hunting and testing, and we should be able to shortly “release” the preseeded installer, both as CD ISO, netboot ISO (what a waste of a CD), and netboot installer ‘suites’.

    There are enough articles on preseeding the Debian Installer:

    I found the last two sites very useful. In addition this example-preseed.txt file proved very useful.

    I just took that example preseed configuration file and modified it to suit the IITM environment. The contents of the file with all the comments stripped of are here:

    debconf debconf/priority string critical
    unknown debconf/priority string critical
    d-i debconf/priority string critical
    d-i debian-installer/locale string en_US
    d-i console-tools/archs select at
    d-i console-keymaps-at/keymap select us
    d-i netcfg/choose_interface select auto
    d-i netcfg/dhcp_failed note
    d-i netcfg/dhcp_options select Configure network manually
    d-i netcfg/get_nameservers string
    d-i netcfg/get_netmask string
    d-i netcfg/get_gateway string
    d-i netcfg/confirm_static boolean true
    d-i netcfg/get_hostname string debian
    d-i netcfg/get_domain string iitm
    d-i netcfg/wireless_wep string
    d-i mirror/country string manual
    d-i mirror/http/hostname string
    d-i mirror/http/directory string /debian
    d-i mirror/http/proxy string
    d-i mirror/suite string testing
    d-i clock-setup/utc boolean false
    d-i time/zone string Asia/Calcutta
    d-i clock-setup/ntp boolean false
    d-i partman-auto/init_automatically_partition \
    select Guided – use the largest continuous free space
    d-i partman-auto/init_automatically_partition seen false
    d-i partman-auto/choose_recipe \
    select Separate /home partition
    d-i partman-auto/choose_recipe seen false
    d-i passwd/root-login boolean false
    d-i apt-setup/non-free boolean true
    d-i apt-setup/contrib boolean true
    d-i apt-setup/use_mirror boolean false
    d-i apt-setup/security_host string
    d-i apt-setup/local0/repository string \ testing main
    d-i apt-setup/local0/comment string http://ftp.iitm.ac.in
    d-i apt-setup/local0/source boolean true
    d-i apt-setup/local0/key string
    d-i debian-installer/allow_unauthenticated string true
    tasksel tasksel/first multiselect standard, web-server, desktop
    d-i pkgsel/include string openssh-server cntlm vlc pidgin xchat gimp linuxdcpp firefox
    popularity-contest popularity-contest/participate boolean false
    d-i grub-installer/only_debian boolean true
    d-i grub-installer/with_other_os boolean true
    d-i finish-install/reboot_in_progress note
    xserver-xorg xserver-xorg/config/device/driver select vesa
    xserver-xorg xserver-xorg/autodetect_monitor boolean true
    xserver-xorg xserver-xorg/config/monitor/selection-method \
    select medium
    xserver-xorg xserver-xorg/config/monitor/mode-list \
    select 1024×768 @ 60 Hz
    #d-i preseed/late_command string in-target wget -q \ # && tar -xzvf post_install.tar.gz && \ #rm post_install.tar.gz && pushd post_install && ./control.rc && popd

    The last three lines which I’ve commented out here are not actually commented in the version on my web server. I’ve commented them out here because they fetch some package from my web server which is not accessible from outside the institute. Also, those lines haven’t been tested (and are going to be tested as I write this blog post).

    Now… how do we get the netboot kernel to use this preseed file? You can’t use the preseed/file=<…> kernel parameter because it requires that the file be on the ramdisk. So one way of doing it is to put it on a web server / FTP server and then use preseed/url=<URL> kernel argument, as in (in the GRUB prompt):

    kernel /linux preseed/url=

    Where the http://&#8230;.cfg should be replaced with the appropriate URL where the installer can find the preseed config file.

    The other option is to open up initrd.gz and put it on the ramdisk. Any file named preseed.cfg put in the root of the ramdisk acts as the preseed configuration file, and the debian installer automatically loads it. If you would like to preseed “optionally” in that case, you can probably rename the file to something else, say optional_preseed.cfg and then pass preseed/file=optional_preseed.cfg to the kernel. This method is detailed in this article, in the context of burning the initrd permanently to an ISO. In that case, another option is to just put the ISO on the CDROM and then use preseed/file=<…>

Compose new post
Next post/Next comment
Previous post/Previous comment
Show/Hide comments
Go to top
Go to login
Show/Hide help
shift + esc