Showing posts with label linux. Show all posts
Showing posts with label linux. Show all posts

Saturday, November 1, 2014

Using Exchange without Outlook


There are some good alternatives to Microsoft Exchange, for instance Zimbra. If your experience is like mine, however, most places use Exchange. Up until now, there haven't been many good options for using Exchange without Outlook. Support for Exchange calendar integration in particular has been lacking. But now there's a great option for using Exchange without Outlook, and you can set it up in less than 15 minutes:

  1. Install Thunderbird

  2. Install the Lightning calendar extension
    1. Download it from here:
      https://www.mozilla.org/projects/calendar/

    2. To install, open the downloaded .xpi extension file with Thunderbird. If that isn't an option:
      1. Open Thunderbird and go to the Tools menu → Add-ons

      2. Click the button to the left of the Search bar → Install Add-on From File

      3. Browse to the extension file and select it → Open

      4. Click Install Now

      5. Click the Restart Now button near the top right

      6. When Thunderbird reopens, close the Add-ons Manager tab

    3. You can also install it as a package in Debian/Ubuntu/Elementary (I normally prefer to download it to get the latest version):
      sudo apt-get -y install xul-ext-lightning

  3. Install the Exchange EWS Provider extension
    1. Download it from here:
      https://github.com/Ericsson/exchangecalendar/releases

    2. Unzip it

    3. Follow the instructions above for installing the Lightning extension to install the Exchange EWS Provider extension

  4. Set up your Exchange email
    1. If you haven't set up your Exchange email address yet, you can do so by using the following instructions. You may need to get the server addresses (IMAP/POP/SMTP) from your system administrator or IT department:
      https://support.mozilla.org/kb/manual-account-configuration

  5. Set up your Exchange calendar
    1. Open Thunderbird and then open the Calendar tab (Events and Tasks menu → Calendar)

    2. Right-click in the Calendar section in the lower-left side of the screen → New Calendar

    3. Select On the Network → Next

    4. Select Microsoft Exchange 2007/2010/2013 → Next

    5. Give it a name, select your email address, and click Next

    6. Check Use Exchange's autodiscovery function, enter your primary email address, Active Directory username, and Active Directory domain name. Then click Perform autodiscovery

    7. Enter your password when prompted

    8. The EWS server URL should automatically be detected. When it is, click Select

    9. Enter your password again if prompted

    10. You should be brought back to the Create New Calendar dialog. Click Next → Finish

    11. Your calendar should now be populated with your Exchange calendar events

  6. Set up your Exchange address book
    1. In Thunderbird go to the Tools menu → Address Book

    2. Click Add Exchange contact folder

    3. Give it a name

    4. Check Add global address list to search results (otherwise, it will only use your personal address book in Exchange)

    5. Check Use Exchange's autodiscovery function

    6. Enter your primary email address, Active Directory username, and Active Directory domain name, then click Perform autodiscovery

    7. The EWS server URL should automatically be detected. When it is, click Select

    8. You should be brought back to the Exchange Contact Settings dialog. Click Save

    9. Now you can search for a contact in Exchange by selecting Exchange contacts on the left and then using the search box in the upper right. Contacts will also be auto-populated when composing new emails.
There are other options out there for Outlook alternatives. One I tried is DavMail Gateway. Compared to Exchange EWS Provider, however, it used a lot of memory because it ran as a Java application in the background. It also didn't handle calendar events as well; for instance, if a calendar event was moved to a different time, it would show up under the new time as well as the old time.

Utiliser Exchange sans Outlook


Il y a quelques bonnes alternatives à Microsoft Exchange, par exemple Zimbra. Si votre expérience est comme la mienne, cependant, la plupart des entreprises utilisent Exchange. Jusqu'à présent, il n'y a pas eu beaucoup de bonnes options pour utiliser Exchange sans Outlook. Le support pour l'intégration des agendas d'Exchange en particulier a fait défaut. Mais maintenant il y a une excellente option pour utiliser Exchange sans Outlook, et vous pouvez le configurer en moins de 15 minutes :

  1. Installez Thunderbird

  2. Installez l'extension d'agenda Lightning
    1. Téléchargez-le ici :
      https://www.mozilla.org/projects/calendar/

    2. Pour l'installer, ouvrez le fichier d'extension .xpi téléchargé avec Thunderbird. Si ce n'est pas une option :
      1. Ouvrez Thunderbird et allez dans le menu Outils → Modules complémentaires 

      2. Cliquez sur le bouton à gauche de la barre de recherche → Installer un module depuis un ficher

      3. Trouver le fichier d'extension et le sélectionnez → Ouvrir

      4. Cliquez sur Installer

      5. Cliquez sur le bouton Redémarrer maintenant en haut à droite

      6. Lorsque Thunderbird rouvre, fermer l'onglet Gestionnaire de modules complémentaires

    3. Vous pouvez aussi l'installer comme un paquet dans Debian/Ubuntu/Elementary (je préfère normalement à le télécharger pour obtenir la dernière version):
      sudo apt-get -y install xul-ext-lightning

  3. Installez l'extension Exchange EWS Provider
    1. Téléchargez-le ici :
      https://github.com/Ericsson/exchangecalendar/releases

    2. Le décompressez

    3. Suivez les instructions ci-dessuspour l'installation de l'extension Lightning pour installer l'extension Exchange EWS Provider

  4. Configurez votre courriel Exchange
    1. Si vous ne l'avez pas encore mis en place votre courriel Exchange, vous pouvez le faire en suivant les instructions suivantes. Vous devrez peut-être obtenir les adresses de serveur (IMAP/POP/SMTP) de votre administrateur système ou votre département informatique :
      https://support.mozilla.org/kb/manual-account-configuration

  5. Configurez votre agenda Exchange
    1. Ouvrez Thunderbird et puis ouvrez l'onglet Agenda (menu Évènements et tâches  Agenda)

    2. Faites un clic droit dans la section Agendas dans le coin en bas à gauche de l'écran → Nouvel agenda

    3. Sélectionnez Sur le réseauSuivant

    4. Sélectionnez Microsoft Exchange 2007/2010/2013Suivant

    5. Entrez un nom, sélectionnez votre adresse courriel, et cliquez sur Suivant

    6. Cochez Utiliser la fonction de découverte automatique d’Exchange, entrez votre adresse courriel principale, nom d'utilisateur Active Directory, et nom de domaine Active Directory. Puis cliquez sur Lancer la découverte automatique

    7. Entrez votre mot de passe lorsque vous êtes invité

    8. L'URL du serveur EWS doit être détecté automatiquement. Puis cliquez sur Sélection

    9. Entrez de nouveau votre mot de passe si vous êtes invité

    10. Vous devez être ramené à la boîte de dialogue Créer un nouveau agenda. Cliquez sur Suivant → Terminer

    11. Votre agenda doit maintenant être rempli avec les événements d'agenda Exchange 

  6. Configurez votre carnet d'adresses Exchange
    1. Dans Thunderbird allez dans le menu Outils Carnet d’adresses

    2. Cliquez sur Ajouter un ficher de contacts Exchange

    3. Entrez un nom

    4. Cocher Ajouter la liste globale d’adresses aux résultats de recherche (sinon, il ne utiliser que votre carnet d'adresses personnel dans Exchange)

    5. Cocher Utiliser la fonction de découverte automatique d'Exchange

    6. Entrez votre adresse courriel principale, nom d'utilisateur Active Directory, et nom de domaine Active Directory. Puis cliquez sur Lancer la découverte automatique

    7. L'URL du serveur EWS doit être détecté automatiquement. Puis cliquez sur Sélection

    8. Vous devez être ramené à la boîte de dialogue Exchange Contact Settings. Cliquez sur Sauvegarder

    9. Maintenant, vous pouvez rechercher un contact dans Exchange en sélectionnant Exchange contacts sur la gauche, puis en utilisant la boîte de recherche en haut à droite. Les contacts seront également généré automatiquement lors de la composition de nouveaux courriels.
Il y a d'autres options qui existent pour les alternatives Outlook. L'un d'eux que j'ai essayé est DavMail Gateway. Par rapport à Exchange EWS Provider, cependant, il utilise beaucoup de mémoire car il fonctionne comme application Java en arrière-plan. Il n'a pas non plus géré les événements d'agenda bien; par exemple, si un événement d'agenda a été replanifié à un autre moment, il se présenterait sous la nouvelle heure ainsi que l'ancien heure.

Friday, November 8, 2013

Flashing your BIOS in Linux using a USB flash drive

These instructions are specific to Ubuntu and Ubuntu derivatives (like Xubuntu and Elementary OS), but they should work on just about any version of Linux. Just modify the steps for installing GParted and UNetbootin as necessary:

  1. Get the current version of your BIOS by running this command in a terminal:
    sudo dmidecode -s bios-version

  2. Find the BIOS update file for your computer. These are generic, but should point you in the right direction:
    1. Get the exact make (Lenovo, ASUS, Dell, etc) and model of your computer. The model will be a combination of letters and/or numbers and is either somewhere on the top or bottom of your computer.

    2. Open a browser and go to the website for the manufacturer of your computer.

    3. There should be a support section where you can navigate to the drivers/downloads for your computer. You'll probably have to search for your computer using the model number you looked up.

    4. From there, find the BIOS update file for your computer. If it's the same version as what you already have installed, you're already up-to-date and you can stop. Otherwise download it. If it comes as a .zip file, open it and extract the .exe file from it that's used to do the actual BIOS update.

  3. Get a USB flash drive that you don't mind erasing. If necessary, copy everything off of it first.

  4. Now, we'll use GParted to erase your flash drive to prepare it:
    1. Install GParted
      sudo apt-get install gparted

    2. Open GParted. If nothing happens, try opening it by typing this into the terminal:
      sudo gparted &

    3. On the upper-right side of the screen, select your flash drive. In the Mount Point column, it should have something starting with /media. Be very careful that you choose the correct drive in this step! If you don't, you could wipe your whole hard drive and lose everything. If you're unsure, you should probably ask for help. askubuntu.com is a great place to get help.

    4. Right-click on any partitions, and click Unmount. Then right-click them again and click Delete.

    5. Right click in the large box at the top that says unallocated and click New.

    6. Change File system to fat16 and click Add.

    7. At the top, click the green checkmark to apply all operations, then click Apply. Remember, this will fully wipe your USB drive!

    8. When it's finished, click Close and exit GParted.

  5. Next, we'll use UNetbootin to make the USB drive bootable:
    1. Before you'll be able to use UNetbootin, open the file explorer, right-click on the USB drive, and click Mount.

    2. Install the latest version of UNetbootin
      sudo add-apt-repository ppa:gezakovacs/ppa
      sudo apt-get update
      sudo apt-get install unetbootin

    3. Open UNetbootin

    4. For Distribution, select FreeDOS

    5. At the bottom, make sure Type is USB Drive

    6. Click OK

    7. When it's finished, click Exit

  6. Go to your USB drive in the file manager and copy the BIOS update .exe file that you downloaded earlier.

  7. Now, you'll need to figure out how to boot to the USB drive. Normally this is done by pressing a special key at the boot screen (the first screen that comes up when you turn your computer on) to open a boot menu. Common keys are: Esc, F1, F2, F10, Enter. You may have to press Esc first to then see which key you need to press. If all else fails, Google it :)

  8. Once you've figured out how to boot to the USB drive, with the USB drive still plugged in, reboot your computer, and boot from your USB boot drive.

  9. At the UNetbootin menu, press Enter

  10. At the FreeDOS boot menu, select FreeDOS Safe Mode and press Enter

  11. Now change to the C drive by typing:
    c:

  12. Get the name of the .exe file you copied by typing:
    dir

  13. You should see a list of files, and one should have EXE in the second column. Flash your BIOS by typing the name of that file that's listed in the first column. For example:
    BIOS_V~1

  14. Once it's finished, turn off your computer, remove the USB drive, and turn it back on.

  15. Get the version of your BIOS again, and this time it should show the new BIOS version:
    sudo dmidecode -s bios-version

Tuesday, October 22, 2013

Using WebEx desktop sharing on Ubuntu 64-bit


Edit: for the most up-to-date solution, see my answer here: http://askubuntu.com/a/363400/18665

Solution:

After much trial and error, I was able to get WebEx desktop sharing working in 64-bit Ubuntu just by installing a few packages (I confirmed this works on Ubuntu 14.04 and 12.04, but I imagine it would work on other versions as well):

  1. Remove unnecessary packages that cause conflicts:
    sudo apt-get -y remove icedtea-7-plugin:i386 icedtea-netx:i386

  2. Install 32-bit Java, a necessary 32-bit library, the Java plugin, and Firefox (WebEx doesn't support Google Chrome on Linux at the moment):
    sudo apt-get install openjdk-7-jre:i386 libxmu6:i386 icedtea-7-plugin firefox

  3. Make sure the correct Java plugin is configured:
    sudo update-alternatives --auto mozilla-javaplugin.so

    If for some reason that doesn't do the trick, you can try this instead:
    sudo update-alternatives --set mozilla-javaplugin.so /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/IcedTeaPlugin.so
Close and re-open Firefox, and WebEx desktop sharing should work.

Details:

Technically WebEx requires 32-bit Java running on 32-bit Firefox for desktop sharing to work on Linux (http://support.webex.com/support/system-requirements.html‎). But for some reason the above method worked, although it does throw errors (if you open Firefox from the command line). If for some reason there are problems with the above method, you can try installing 32-bit versions of Firefox and the Java plugin. Here are a couple of different methods:

If you're like me and primarily use Google Chrome, the easiest thing to do is to just install 32-bit Firefox and the 32-bit Java plugin from the Ubuntu repositories (note that this will remove the 64-bit version of Firefox that comes with Ubuntu 64-bit):

  1. Install the 32-bit versions of Firefox and the Java plugin (and an additional necessary library):
    sudo apt-get install firefox:i386 icedtea-7-plugin:i386 libxmu6:i386

  2. Change the default Firefox plugin to the 32-bit one:
    sudo update-alternatives --set mozilla-javaplugin.so /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
Even if Firefox is your primary browser, you probably won't notice a difference in using the 32-bit version of Firefox. But if you really do care, here's how to install 32-bit Firefox without uninstalling 64-bit Firefox:

  1. Install the 32-bit Java browser plugin and an additional necessary library:
    sudo apt-get install icedtea-7-plugin:i386 libxmu6:i386

  2. Download 32-bit Firefox (the default downloads are currently 32-bit)
    http://www.mozilla.org/firefox/

  3. Extract the download
    tar xvf firefox-X.X.tar.bz2

  4. Make sure the binary is 32-bit
    file firefox/firefox

    It should say something like:
    firefox/firefox: ELF 32-bit LSB executable

  5. Change the default Firefox plugin to the 32-bit one (don't worry, we'll fix this so you can still use the Java plugin in your 64-bit Firefox):
    sudo update-alternatives --set mozilla-javaplugin.so /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so

  6. Re-link the 64-bit plugin for 64-bit Firefox (adjust the path to your version of Java as necessary):
    cd /usr/lib/mozilla/plugins
    sudo ln -s /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/IcedTeaPlugin.so libjavaplugin.so.64

  7. Whenever you want to run the 32-bit Firefox for WebEx, cd to the path where you extracted it and run it (or create a link)
    cd /path/to/firefox
    ./firefox &

  8. To make sure it worked, in the address bar go to about:plugins and verify that the Path contains i386 (it should work if it also contains amd64, but only if i386 comes first. If not, double-check you did the above steps correctly).
One additional note: these solutions still seem to fail the Java plugin verification page, but even the 64-bit version seems to fail. I'm guessing it's missing a library, but whatever it is it wasn't necessary for me to get WebEx working.

Saturday, September 7, 2013

Try out Xubuntu/Xfce from a normal Ubuntu installation


I've blogged before about Xubuntu/Xfce, but what if you've already got regular Ubuntu installed and want to try out Xubuntu without reinstalling? Thankfully, it's actually pretty easy, and you can have it up and running in a matter of minutes:

  1. Install Xfce and the settings to make it look like Xubuntu (if you prefer it to look more like vanilla Xfce instead of Xubuntu, leave out xubuntu-default-settings):
    sudo apt-get install indicator-application-gtk2 indicator-sound-gtk2 xfce4 xfce4-datetime-plugin xfce4-indicator-plugin xfce4-terminal xubuntu-default-settings

  2. Log out

  3. Click the icon to the right of your username and select Xubuntu Session (you can also choose Xfce session if you want vanilla Xfce)

  4. Type your password and log in
That's it! Now, you can customize Xfce to your liking. These are all optional of course, but they're some of the customizations I prefer:

  1. Disable dock auto-hiding
    1. Click on the Xfce icon (it looks like a mouse head) in the upper-left side of the screen

    2. Go to Settings --> Settings Manager --> Panel

    3. In the dropbox a the top of the window, change to the dock panel (probably Panel 2)

    4. Uncheck Automatically show and hide the panel

  2. Remove any empty icons in the dock by right clicking on them --> Remove

  3. Hide default desktop icons
    1. Xfce menu --> Settings --> Settings Manager --> Panel --> Icons

    2. Under Default Icons, uncheck any icons you wish to hide

  4. Remove the duplicate login screen entry
    1. If you prefer the Xubuntu look and feel and want to get rid of the Xfce Session entry, run this command:
      sudo mv /usr/share/xsessions/xfce.desktop /usr/share/xsessions/xfce.desktop.bak

    2. If you prefer the vanilla Xfce look and feel and want to get rid of the Xubuntu Session entry, run this command:
      sudo mv /usr/share/xsessions/xubuntu.desktop /usr/share/xsessions/xubuntu.desktop.bak

  5. Change the default file manager and terminal
    1. Xfce menu --> Settings --> Settings Manager --> Preferred Applications --> Utilities

    2. File Manger --> Nautilus

    3. Terminal Emulator --> GNOME Terminal
If, for some reason you accidentally chose Xfce Session (or Xubuntu Session) and it messed up your layout for the other, you can run this command to completely wipe your Xubuntu/Xfce settings and restore it to the default layout:

rm -rf ~/.cache/xfce4 ~/.config/xfce4

Just remember you will lose any customization you may have made to Xubuntu/Xfce.

Enjoy!

Wednesday, September 4, 2013

MP3s ripped from CDs in Ubuntu have incorrect track length

If you rip a CD in Ubuntu 12.04+ using the default program provided for this (Rhythmbox), the track lengths will be incorrect. This is because by default, Ubuntu will rip your mp3s using VBR, but it doesn't add the VBR headers.

Rather than go into the details, here's the easiest way to fix it:
  1. Install vbrfix by running this command in a terminal:
    sudo apt-get install vbrfix

  2. Now CD to the folder where the mp3s are that you need to fix:
    cd /path/to/mp3s

  3. Run this command to add the VBR headers to the mp3s:
    find . -type f -iname '*.mp3' -exec vbrfix {} {} \;

  4. Vbrfix seems to leave behind a couple of temporary files, so clean them up:
    rm vbrfix.log vbrfix.tmp
Another option would be to change the default preset to make it CBR. You can read more about doing that here: How do you edit the “Preferred Format” settings in Rhythmbox? Something like this ought to do the trick (change the bit rate as desired):
[mp3-cbr]
name=lamemp3enc
target=bitrate
bitrate=192
cbr=true
encoding-engine-quality=high
mono=false
You can read the details of the problem at this bug report:
Rhythmbox does not add VBR headers when ripping CDs to MP3

Thursday, July 25, 2013

Xubuntu vs Lubuntu (Xfce vs LXDE)


While looking around for alternatives to Ubuntu, I stumbled upon two lightweight derivatives of Ubuntu: Xubuntu and Lubuntu. They're both derivatives of Ubuntu, which means they get the same great up-to-date packages, community support, and can benefit from PPAs. Plus they're both lightweight enough to be run on older computers, which is a nice change of pace from regular Ubuntu, whose Unity interface is too bloated to run well on older machines.

Lubuntu is a little more lightweight than Xubuntu, but on closer inspection it's clear that Lubuntu's advantages end there.

Here are some reasons why Xubuntu is the better choice:

  • Xubuntu is more mature; it's been around since 2006, whereas Lubuntu was introduced in 2010.
  • Related to the previous point, Xfce (the desktop environment which Xubuntu is based on) is more mature and has been around much longer than LXDE (which Lubuntu is based on).
  • LXDE is largely developed by one person, whereas Xfce has a large and robust development team.
  • Every two years Ubuntu releases an LTS (Long Term Support) version. Xubuntu follows Ubuntu in providing LTS releases, but Lubuntu doesn't.
  • Xubuntu has an integrated settings manager, but Lubuntu doesn't.
  • Lubuntu is a little too bare bones and requires more work to configure and customise (Sources: 1 2 3)
  • This is mostly a matter of opinion, but Xubuntu/Xfce looks better (and I'm not the only one that thinks so). It also looks more like GNOME 2.
Of course you are free to use whatever desktop environment you like. My goal is just to help you make an informed decision.

Oh, and the screenshot at the top is Xubuntu :)

Wednesday, March 13, 2013

Spotify Linux woes

spotify

I recently (okay, almost 2 months ago) updated Spotify on my Ubuntu Linux machine, and the new version is having lots of problems:
  • Dragging from search results into a playlist crashes spotify

  • Dragging items to the top or bottom of a playlist crashes Spotify

  • Artist radio isn't working (or it's taking so long to load that I gave up waiting)

  • Searching doesn't display instant search results like it used to
My solution: downgrade spotify. Here goes:
(Note: I'm running Ubuntu 12.04 64-bit. If you're using 32-bit Ubuntu replace "amd64" in steps 3 and 6 with "i386". If you're using a different version of Ubuntu or a different flavor of Linux, you're on your own.)

  1. First, completely quit spotify. Make sure you click on the icon and click Exit if it's in the system tray

  2. Run this command in a terminal to make sure you've got the problematic version of Spotify:
    dpkg -l spotify-client
    The output should include this line:
    ii spotify-client 1:0.8.8.323.gd Spotify desktop client

  3. Download the previous version of spotify by running this command in a terminal:
    wget http://packages.bodhilinux.com/bodhi/pool/stable/s/spotify/spotify-client_0.8.4.103.g9cb177b.260-1_amd64.deb

  4. Uninstall the current version:
    sudo dpkg -r spotify-client

  5. Move the cache folder out of the way:
    sudo mv ~/.cache/spotify/ /tmp

    Note: if you don't do this, you might get this error when running spotify:
    Missing Dependencies
    Framework compatible with bridge-desktop (version 0.7.0) does not exist.

  6. Install the previous version:
    sudo dpkg -i spotify-client_0.8.4.103.g9cb177b.260-1_amd64.deb

    If you get this error:
    dpkg: error processing spotify-client (--install):
    dependency problems - leaving unconfigured

    run this command to fix it by installing any missing dependencies:
    sudo apt-get -f install

  7. To keep spotify from being upgraded again to the broken version, run this command:
    grep -r repository.spotify.com /etc/apt/sources.list* | egrep -v "\.(save|distUpgrade):deb" | cut -f 1 -d :

  8. The previous step should output one or more files. Edit them and put a pound sign (#) in front of any occurrences of this line:
    deb http://repository.spotify.com stable non-free

    Like so:
    #deb http://repository.spotify.com stable non-free
Now spotify should work, at least as well as it did before ;)

Tuesday, January 22, 2013

RHEL 6 kickstart maps first hard drive to /dev/sdc

I was installing RHEL 6 on a Dell PowerEdge R610, and for some strange reason the first drive was mounted as /dev/sdc instead of /dev/sda. I saw someone else had the same issue on CentOS 6:

https://www.centos.org/modules/newbb/viewtopic.php?topic_id=36632

The solution: disable the iDRAC virtual media. I had to press Ctrl-E to get into the DRAC menu when it prompted me during the boot process, then I had to arrow down to Virtual Media Configuration and change the Virtual media setting from attached to detached.

Or from the iDRAC web interface: System --> Console/Media --> Configuration --> Virtual media --> Status --> change to Detach --> Apply

Now the first drive is mapped as /dev/sda again.

Wednesday, January 9, 2013

Dell DSET: Failed to gather Chassis/Storage data.

Trying to run Dell's DSET tool on Linux (RHEL), if it fails with the following error after entering the root password:

Failed to gather Chassis/Storage data. Check the IP Address, credentials and namespace.

Make sure you entered the root password correctly. Reset the root password if you're not 100% sure.

Thursday, November 15, 2012

Elementary luna beta1 non PAE live CD

I booted up the elementary luna beta1 live CD today, only to be greeted by this error:

This kernel requires the following features not present on the CPU:
pae

Unable to boot - please use a kernel appropriate for your CPU.


After fumbling around for a while, I was finally able to make my own non-PAE image. I'm not sure how well it will work for others, because the installation itself seems to install a PAE kernel, but it worked fine on my machine that was giving me the above error and doesn't support PAE (at least according to cat /proc/cpuinfo | grep -i pae). Here's the link:

http://uploading.com/files/get/f5cdcc7c/elementaryos-beta1-i386-nonpae.20121114.iso

If there's a better site to upload it to, let me know. I'd put it in dropbox but there's a daily bandwidth limit, and I don't want my account flagged for abuse.

Wednesday, November 14, 2012

Elementary luna beta1 is here!



Elementary linux luna beta1 is finally here!:

Hello, Luna Beta 1

Don't know what elementary is? It's linux with a crisp, clean, and consistent UI (user interface) and a unified UX (user experience). It's basically everything linux should be. Read more about it at the link above, or you can check out some of my posts on elementary:

http://bmaupin.wordpress.com/tag/elementary/

Now stop reading this and go download it!

Wednesday, October 24, 2012

sudo -s on RHEL 6 doesn't preserve HOME

Solution:

If you're the only one using this machine, the easiest fix is to run this command as root:
visudo

and then add this line to the sudoers file:
Defaults env_keep=HOME

If this is a shared computer and you aren't at liberty to change the sudoers file, you can add this code to .bashrc in your home directory. be sure to log out and back in for it to take effect:

# hack to preserve home when using sudo -s on rhel 6
if [[ `cat /etc/*release | grep "release 6"` ]]; then
    sudo() {
        if [[ $@ == "-s" ]]; then
            sudo bash -c "HOME=$HOME; exec bash"
        else
            command sudo "$@";
        fi;
    }
fi;


Details:

In linux, if I want to become root but keep my user's environment (home, aliases, etc), I normally use sudo -s:
[user@computer ~]$ sudo -s
[root@computer ~]# echo $HOME
/home/user


and if I want to become root and use root's environment, I'll use sudo -i:
[user@computer ~]$ sudo -i
[root@computer ~]# echo $HOME
/root


The above works on Ubuntu, and all versions of RHEL up to 5 (the same probably goes for CentOS). however, I recently noticed that RHEL 6 , my home variable isn't preserved when using sudo -s:
[user@computer ~]$ sudo -s
[root@computer user]# echo $HOME
/root


The most frustrating thing is that because of this, it seems like my .bashrc wasn't being called, and so I didn't have access to my aliases any more.

It seems like the cause of this is that the default in RHEL 6 is not to preserve the home variable. you can see this running this command as root:
sudo -V

If you look under the list of "Environment variables to preserve," you'll notice that in RHEL 5 HOME is listed, but in RHEL 6 it isn't.

Wednesday, October 10, 2012

uninstalling problematic rpms

if you're unable to uninstall an rpm using yum erase/remove or rpm -e because something in the rpm's uninstallation process is broken, try using rpm -e with the --noscripts --notriggers flags:

$ sudo rpm -e sblim-sfcb
/var/tmp/rpm-tmp.54035: line 7: /etc/init.d/sfcb: No such file or directory
error: %preun(sblim-sfcb-1.3.11-0.7.14.x86_64) scriptlet failed, exit status 127
$ sudo yum remove sblim-sfcb
...
Running Transaction
/var/tmp/rpm-tmp.49575: line 7: /etc/init.d/sfcb: No such file or directory

Removed:
sblim-sfcb.x86_64 0:1.3.11-0.7.14

Complete!
$ rpm -qa sblim-sfcb
sblim-sfcb-1.3.11-0.7.14
$ sudo rpm -e sblim-sfcb --noscripts --notriggers
$ rpm -qa sblim-sfcb
$

Wednesday, August 22, 2012

Fix Half Life 2 lighting issues



Solution:

  • You need to be using a video card that supports DirectX 9 and the DirectX level in Half Life 2 needs to be 90 or higher. In the console, type mat_dxlevel to see the directx level. To set it to 90, for example, type mat_dxlevel 90

  • HDR needs to be fully enabled. The easiest way to do this (after correctly setting the directx level) is by typing this in the console: mat_hdr_level 2 and then type mat_hdr_enabled to make sure HDR is in fact enabled.

  • Lastly, if the lighting is still messed up, type mat_fullbright 0 in the console to fix it.

  • An alternative is to download these files:
    http://uploading.com/b84125d7/ldr_fix-exe
    http://uploading.com/3mb5mdm9/sky_fix-exe

    Open them to extract the files (in Linux, you can open them using Wine). Then copy the files to SteamApps/common/Half-Life 2/hl2/maps in your Steam installation folder (~/.local/share/Steam on Linux, or in C:/Program Files on Windows).

Details:

I was recently playing Half Life 2 on Linux using Wine, and at one point, all the lighting messed up. It basically looked like there were no shadows at all. The screenshot above is supposed to be in a dark tunnel.

Supposedly this was caused by an update to the Half Life 2 maps when the orange box was released. Somehow or another, some of the maps require HDR to be enabled for the lighting to work. HDR is only supported in DirectX 9 and higher, and I was setting the DirectX level to 80 (DirectX 8.0) by using the -dxlevel 80 flag in the launch options. I had to remove that flag, and then take the steps above to fix the problem.

Once I did fix the lighting, the game got significantly slower. Still playable, but a lot more annoying to play. Using some of my tips on playing Half Life 2 on an older computer helped, but some of the textures are messed up.  This may affect other source games as well.

Now that Half Life 2 is playable natively on Linux, this is issue will probably only affect Windows users.

Friday, May 25, 2012

wine crashing on ubuntu 10.10

solution:



downgrade wine, like so:

  1. uninstall the current version of wine
    sudo apt-get remove wine1.3 wine1.3-gecko ttf-symbol-replacement-wine1.3

  2. install the older stable version of wine
    sudo apt-get install wine1.2




backstory:



I was recently trying to install steam on ubuntu 10.10 using the latest wine (1.4 something I believe). it kept crashing X windows right as it tried to launch steam.exe, or when I tried to launch it manually. here's the end of the terminal output:

err:wgl:is_extension_supported No OpenGL extensions found, check if your OpenGL setup is correct!
fixme:iphlpapi:NotifyAddrChange (Handle 0x453d95c, overlapped 0x4353d20): stub
fixme:winsock:WSALookupServiceBeginW (0x453da5c 0x00000ff0 0x453daa4) Stub!
[0525/102859:ERROR:network_change_notifier_win.cc(111)] WSALookupServiceBegin failed with: 8
fixme:toolhelp:CreateToolhelp32Snapshot Unimplemented: heap list snapshot
fixme:toolhelp:Heap32ListFirst : stub
ALSA lib pcm_pulse.c:1008:(_snd_pcm_pulse_open) Unknown field handle_underrun
err:winediag:AUDDRV_GetAudioEndpoint PulseAudio "default" -22 without handle_underrun. Audio may hang. Please upgrade to alsa_plugins >= 1.0.24
../../src/xcb_io.c:385: _XAllocID: Assertion `ret != inval_id' failed.
XIO: fatal IO error 11 (Resource temporarily unavailable) on X server ":0.0"
after 150 requests (144 known processed) with 0 events remaining.

I'm not sure which part of that caused the crash. I googled the third-to-last line, and came across this still unfixed bug that's been in ubuntu for the last four versions (please try to convince me the ubuntu developers care about stability):
https://bugs.launchpad.net/ubuntu/+source/libx11/+bug/507062

after I downgraded wine (see solution above), steam installed just fine:
winetricks steam

if, for some reason, you removed the wine PPA or need to install winetricks manually, this should do the trick:

cd /usr/local/bin
sudo wget http://winetricks.org/winetricks
sudo chmod +x winetricks
cd ~

Monday, April 30, 2012

my next OS: elementary



as ubuntu 12.04 brings yet another buggy release (see the comments here), I'm all the more excited about elementary's upcoming Luna release.

elementary, for those of you who don't already know, is everything linux (and any operating system) should be. it's crisp, clean, and most importantly, consistent! the team at elementary have created a desktop environment and suite of applications that adhere to a common set of interface guidelines. it's evident they care more about a great UX and UI than cramming more bells and whistles into an already inconsistent and unstable UI (ubuntu's unity).

for those of you suffering through another buggy ubuntu release with the lackluster unity desktop environment, I highly recommend elementary.

less is more.

Monday, February 6, 2012

Thursday, January 19, 2012

Why Linux?

Let's be honest, sometimes when I'm using Linux I get pretty frustrated. Especially with distributions like Ubuntu who have been focusing so much on new bells and whistles that they've been lackadaisical when it comes to fixing bugs.

...and then I have to use Windows for something or other (normally gaming), and I'm reminded why I use Linux in the first place. So I thought I'd write down some of the advantages, for myself, if nothing else:

  • No more viruses! (or spyware)
    Not only do you not have viruses in Linux, an even bigger advantage in my opinion is that you're not dedicating gobs of processor and memory to antivirus/antispyware software. This is all the more important on older/slower computers.

  • It's free!
    Free as in you can see the source code and modify it however you like, as well as free as in cost, Which you'll remember next time you have to purchase a retail copy of any Microsoft software. Which brings me to my next point...

  • No more licenses/activation!
    Have you ever tried installing Windows and the key wouldn't work because it was a Dell key with OEM media? Or installed office only to discover you've misplaced your key? Since Linux itself as well as most Linux software is free, so no licenses to fuss with!

  • Less rebooting
    Not much needs to be said about the ridiculousness of having to reboot a "modern" operating system (windows) every time it's updated. With Linux, you only need to reboot when updating the kernel. And even then, it doesn't nag you every 15 minutes to reboot.

  • More security
    Linux gets security patches every day, not once a month like Windows.

  • No more startup cramming
    Windows computers gradually get slower the longer you use them, because half of the programs you install (Adobe Reader, Office, iTunes, even Google software) decide they want to run at startup. Not so with Linux.

  • Less use of system resources
    Unlike the latest version of Windows, the latest versions of Linux will actually run on old computers, especially if you use a lightweight desktop environment like Xfce, LXDE, or Enlightenment.

  • Easier software acquisition/updates
    Want to install software in Linux? Almost everything you need is simply an apt-get (or yum) away! This includes codecs, which can be annoying to hunt down in Windows. Software is also automatically updated via the centralized package manager.

  • Easier development
    Everything you need for development is available through a package manager as well (C compiler, JRE, git, etc.). Python? Already comes with Linux. Plus, development software integrates much better in Linux because the terminal isn't just an afterthought like it is in Windows.

  • Automation
    This is more important for servers than for desktops, but every single task in Linux can be automated with free software (Python, shell scripting, Puppet...).

  • Nicer font rendering
    With windows 7, Microsoft is finally starting to catch up, but Linux has had much nicer font rendering for a long time now.
Next time I'm annoyed with Linux I can look at my list and remember life could be worse--I could be using Windows ;)

Wednesday, August 31, 2011

A few good open-license Arabic fonts

Edit: I went ahead and put these here so I can maintain them more easily: Open-license Arabic fonts

Did you know the Arabic script is the second most-used writing system in the world? (source)

In case you happen to be looking for a decent Arabic font for your website, software, or publication, I've run across a few good ones that have an open license:
  • DejaVu Sans and DejaVu Sans Mono
    These fonts support a lot more than just Arabic, but they do Arabic quite well. They come bundled with most GNU/Linux distributions. There are other DejaVu fonts, but as far as I can tell they don't support Arabic.

  • Droid Naskh
    This font was created by the Arabic typographer Pascal Zoghbi for Google. You can read more about it here: http://www.29arabicletters.com/foundry/?m=1-1-1&fid=26

  • DroidSansArabic
    This is the Arabic font for the Android OS. it was commissioned by Google and created by Ascender Corporation.

  • Kacst
    A font from the folks behind the Arabeyes project supporting Arabic on *nix. More about this font and other fonts by Arabeyes here: http://projects.arabeyes.org/project.php?proj=Khotot

  • SIL Arabic fonts
    SIL has released two fonts under an open license: Scheherazade and Lateef. Note that these fonts don't contain individual glyphs for all of the forms (initial, medial, final), and so if you use them in an environment that doesn't support the advanced shaping features of OpenType or AAT (such as Android), the letters won't be properly connected.
Currently unreleased fonts:
  • Shasha
    Yet another Google commissioned font, this one appears to still be in progress. Interestingly, it bears a strong resemblance to DroidSansArabic. You can read more about its development here: http://shashafont.com/

  • Ubuntu Arabic font
    (Thanks to Phil R for pointing out this one)
    It looks like Canonical (the company behind Ubuntu) has commissioned Dalton Maag to create an Arabic font for Ubuntu. Nothing released yet, but here are some previews:
    Ubuntu Arabic, in print!
    Hebrew and Arabic on track
Pretty cool to note that Google commissioned 3 of the font families mentioned. Certainly Google isn't perfect, but they do contribute quite a bit back to the community.