Moving my contacts and calendar away from Google:
Collaborative editing: http://etherpad.org/
jitsi.org They have a new alpha for android, might be a suitable option on android as well in the future
or Mumble http://mumble.sourceforge.net/ but it requires a server and people connected to that server.
At home I have a good cable internet access but the router/modem combo that my ISP provides includes wireless G (54Mbit/s) AP and a fastEthernet switch (100 Mbit/s).
So when I bought my new server, I was planning to use it as an upgrade for both my wired and wireless networks. The HP microserver has 2 low profile PCIex slots so I bought a cheap gigabit ethernet card and a cheap 150Mbit/s atheros chipset based wifi card :
- TP-Link – TL-WN781ND – Carte WiFi N PCI express – 150Mbps (14€)
- TP-Link – Carte réseau Gigabit PCI-Express 1x – Chipset RealTek – TG-3468 (13€)
Installation on Debian is easy, I always use the ISO installer that includes the binary blobs. You should find indications easily on Google anyway.
wlan0 and eth1 on my server are bridged. My ISP’s router is the DHCP server, serving addresses on 192.168.0.0/24
The desktop computer has 2 interfaces: 1 is connected to the router with DHCP, the other is connected to the server’s eth0 with static ips on another private addressing.
So the configuration on the Microserver is limited to bridging 2 interfaces and configuring hostapd.
I took most of the information I needed from that link: http://forum.doozan.com/read.php?2,6300
Here is my /etc/hostapd/hostapd.conf :
# if you want to bridge the onboard eth0 and the wireless USB adapter’s wlan0, this should work
# this is the driver that must be used for ath9k and other similar chipset devices
# yes, it says 802.11g, but the n-speeds get layered on top of it
# this enables the 802.11n speeds and capabilities … You will also need to enable WMM for full HT functionality.
# self-explanatory, but not all channels may be enabled for you – check /var/log/messages for details
# also, make sure you survey your 2.4GHz environment, and find some uncluttered/uncrowded channels
# adjust to fit your location
# Here is the authoritative list of countries:
# let your AP broadcast the settings that agree with the above-mentioned regulatory requirements per country
# adjust to fit your preference
# this is how I set mine up – works perfectly for iPhone, Mac OS X (SnowLeopard) & Linux
# these have to be set in agreement w/ channel and some other values… read hostapd.conf docs
# here I’m using 40MHz channels to try and maximize my throughput
# … these can be tuned to specific capabilities per device/chipset
# IIUC, this enables reauthentication for clients, so the passphrase doesn’t have to be re-entered
# … my understanding… 3600 seconds = 1 hr, so your device would have to reauthenticate if it rejoined after 1 hr
# I have mine set quite a bit higher than 3600 seconds… so that my iPhone doesn’t ask me to type in the password
# makes the SSID visible and broadcasted
And for the bridging, here is my /etc/network.interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
iface lo inet loopback
# Interface vers le routeur et internet
iface eth1 inet static
# Interface vers le pc fixe pour transferts rapides
iface eth0 inet static
# Interface wifi pour AP
iface wlan0 inet static
# Interface bridge
iface br0 inet static
bridge_ports eth1 wlan0
up /sbin/ifconfig br0 up
post-up /bin/sleep 10 ; /usr/sbin/hostapd -B /etc/hostapd/hostapd.conf
pre-down /usr/bin/killall hostapd
down /sbin/ifconfig br0 down
The post-up and pre-down take care of switching on and off the wireless AP as soon as the bridge is up/down.
I bought recently a HP microserver to upgrade from my previous server that was a Seagate Dockstar.
One of the goals I had in mind was to use the server not only as a NAS, webserver, etc… but also as a HTPC running XBMC (and as a gigabit switch and a 802.11N AP but more on that later). I was running Debian Squeeze for ARM on the Dockstar and went for Debian Wheezy (tesing for now) for the Proliant as it has a more recent kernel to build my AP, and XBMC Eden is available directly in Debian repositories. My idea is to set it up now and stay on Wheezy when it becomes stable so I have only minimal maintenance to do in the future.
My Microserver is plugged to my videoprojector (Acer K10 LED) by VGA. I have no other graphical application running on the microserver so I didn’t install a window manager and I’m launching XBMC with xinit.
XBMC works great on the Microserver. I’m using ALSA as my sound system and a FiiO E10 as my USB sound card. I have a mpd server running to be able to play music in my living room, controlled by an Android client Droid MPD Client (HD). XBMC or mpd are mutually exclusive in their usage of the sound card (maybe I could enhance that by tweaking ALSA settings or moving to some other audio management ?). This is the first rason why I want to be able to start or stop XBMC on demand.
Another reason is that XBMC being idle uses between 10 and 30% of CPU. My machine serves as a server 24/7 and as a HTPC around 1h per day on average (I don’t use it everyday).
I have no keyboard attached to the Microserver.
So what I did was install 2 applications to my Android smartphone:
The XBMC remote is a very fine app to remote control your XBMC HTPC and it also can exit XBMC.
Script Kitty is an application that lets you run scripts on a server with SSH. It lets you create a simple launcher on your homescreen that directly connects to your server and runs a command on it. Perfect to launch XBMC without having to install anything more on the Microserver !
The result on my home screen looks like this:
To configure Script Kitty, you have to give it your SSH credentials and tell it some commands to execute. Then you go to your home screen and add a direct shortcut to the script you created.
Here is the script I run on the server:
/usr/bin/xinit /usr/bin/xbmc-standalone — :0
By default on Debian, you will not be able to use xinit from a SSH shell. This seems to be a security feature. In order to allow it, you need to run:
And from the menu choose to grant anybody the right to start X.