Raspberry Pi - Text to Speech
Just a quick note on Speech Synthesis a Raspberry Pi project. I had to research some of the options on the Raspberry Pi while looking into a project where I need some audio announcements.
Configuring Sound
echo 'snd-bcm2835' >> /etc/modules
sudo modprobe snd-bcm2835
sudo apt-get install mplayer alsa-base alsa-utils pulseaudio mpg123
# make mplayer use mpg123 codec instead of default ffmp3float
echo "afm=mp3lib" >> ~/.mplayer/config
Since I am using Raspbian which is a Debian based (Wheezy) Distribution I used some Ubuntu documentation (https://help.ubuntu.com/community/TextToSpeech) as the starting point.
Creating Twitter Archives
One of the more common uses of Twitter for me is to monitor “back-channels” at events (often events I can attend, but more often these days events I am unable to attend).
Unfortunately Twitter’s search capabilities cease to be useful after a little while and so it is very handy to be able to create an archive for the events ‘hashtag’. There used to be a number of tools in the early days, but mainly because of Twitter’s changes to policies and very unfortunate morphing into a closed ‘media-publishing’ platform, the developers of such tools were forced to discontinue their services.
Enable GeoIP lookups on CentOS
GeoIP enables you to identify the location, organization, connection speed, and user type of your website visitors.
yum install GeoIP mod_geoip
cd /usr/share/GeoIP/
wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz
wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
gunzip GeoIP.dat.gz
gunzip GeoLiteCity.dat.gz
rm -f *.gz
Edit the VirtualHost settings in httpd.conf
<ifmodule mod_geoip.c>
GeoIPEnable On
GeoIPDBFile /usr/share/GeoIP/GeoIP.dat Standard
GeoIPDBFile /usr/share/GeoLiteCity.dat Standard
</ifmodule>
Restart Apache
/etc/init.d/httpd restart
Accessing Amazon RDS from Desktop
Every once in a while it is handy to be able to access an Amazon RDS Database Instance remotely from a desktop.
ssh -i <strong>YOUR-AMAZON-PRIVATE-KEY</strong>.pem -l <strong>YOUR-AMAZON-RDS-USERNAME</strong> -L 33060:<strong>YOUR-AMAZON-RDS-PRIVATE-IPADDRESS</strong>:3306 -N ec2-usr@<strong>YOUR-AMAZON-EC2-INSTANCE-PUBLIC-ADDRESS</strong>
Note: YOURAMAZONRDSPRIVATEIPADDRESS needs to be the AWS internal RDS IP Address – not the external hostname
You can then connect to RDS using mysql commands or any GUI tool such as MySQL Workbench via localhost:33060
Thanks to: Dirk Taggesell via AWS Forums
Wireshark install on Ubuntu 12.04
Just a short note on Wireshark install (needed to beat an Asterisk SIP install into submission)
sudo apt-get install wireshark
sudo useradd -U -M -s /bin/false wireshark
sudo chgrp wireshark /usr/bin/dumpcap
sudo chmod 754 /usr/bin/dumpcap
sudo setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' /usr/bin/dumpcap
sudo gpasswd -a YOURUSERNAME wireshark
Source: http://wiki.wireshark.org/CaptureSetup/CapturePrivileges
Organisational micro-blogging for all
Having seen more and more articles on the use of micro-blogging tools in educational and corporates settings, I am constantly surprised that one of the most useful options from my point-of-view seems to be constantly overlooked. Micro-blogging is like Twitter, but private to your organisation. It is a great way to capture those more informal internal discussions. It can help distribute useful information (such as links) throughout your organisation or help kick-start conversations.
Offline RSS Reading on Ubuntu
I sometimes have time to read RSS feeds when I have no Internet connection. Granted this is happening less often these days with wireless connectivity pretty much ubiquitous, but I frequently have that need. Most often it’s in an air-plane when you want to catch up on non-essential news and don’t have any connectivity.
This is where Lightread comes in handy. It synchronizes your Google Reader Account with excellent integration into the Ubuntu UI (desktop notification of new items …).
CoffeeScript on Ubuntu 12.04
Installing CoffeeScript on Ubuntu 12.04 is a complete no-brainer by the looks of it (since both node.js Core as well as Node Package Manager are in the Ubuntu repos).
sudo apt-get install nodejs npm
sudo npm install -g coffee-script
To check the installation
coffee -v
Just as a reminder for myself & in case it helps somebody …
Saving Video Streams in Ubuntu
Flash Media
rtmpdump
apt-get install rtmpdump
rtmpdump -r "rtmp://domain.tld/video_name.flv" -o video_name.flv
Docs: http://rtmpdump.mplayerhq.hu/rtmpdump.1.html
Windows Media
mimms
apt-get install mimms
mimms mms://domain.tld/video_name.wmv
Docs: http://manpages.ubuntu.com/manpages/precise/man1/mimms.1.html
mplayer
mplayer -dumpstream -dumpfile video_name.wmv mms://domain.tld/video_name.wmv
OpenVPN Install on CentOS 6 Server
I recently had a need to install a VPN service in a OpenVZ container. Since I normally only use Hardware emulating VM’s I ran into quite a few issues in terms of low-level networking support on this Container Virtualisation System. Turns out that you are stuck with a TUN/TAP solution as most services won’t enable PPP services on their infrastructure. Also Ethernet bridging is not available (at least on the service I used) so you’re stuck with NAT IP masquerading. Considering the options I thought best served with using OpenVPN server.
Installing Poptop (pptpd) VPN Server on CentOS 6
For roaming mobile clients PPTP (Point-to-Point Tunneling Protocol) is still the quickest way to get VPN connections to tunnel traffic over a secure link.
Installation
I always prefer installation via a yum repository as this will ensure patches are applied during regular system updates
sudo rpm --import http://poptop.sourceforge.net/yum/RPM-GPG-KEY-PPTP
sudo rpm -Uvh http://poptop.sourceforge.net/yum/stable/rhel6/pptp-release-current.noarch.rpm
sudo yum install ppp pptpd -y
Configuration
Note: replace $USERNAME and $PASSWORD with actual values
IP configuration
echo "localip 192.168.0.1" >> /etc/pptpd.conf
echo "remoteip 192.168.0.100-199" >> /etc/pptpd.conf
DNS configuration
Disable services on boot - Ubuntu 12.04
To keep my desktop (notebook) machine light and responsive I don’t want unnecessary services starting on boot-time. Turns out Ubuntu is surprisingly cumbersome to configure in this area (compared to RedHat / Fedora).
Two services I need on my notebook, but don’t want them to start unless I require them running are MySQL and Apache. But it looks like some services are started using upstart init daemon and it appears there is no management tool for this. Services can pe prevented from auto-starting either by renaming the config file or commenting out the start line in the config file