sdf.org

sdf.org This one is an interesting site. The Super Dimension Fortress is a networked community of free software authors, teachers, librarians, students, researchers, hobbyists, computer enthusiasts, the aural and visually impaired. It is operated as a recognized non-profit 501(c)(7) and is supported by its members. Our mission is to provide remotely accessible computing facilities for the advancement of public education, cultural enrichment, scientific research and recreation. Members can interact electronically with each other regardless of their location using passive or interactive forums. Further purposes include the recreational exchange of information concerning the Liberal and Fine Arts. Members have UNIX shell access to games, email, usenet, chat, bboard, webspace, gopherspace, programming utilities, archivers, browsers, and more. The SDF community is made up of caring, highly skilled people who operate behind the scenes to maintain a non-commercial INTERNET. ...

Driving Continuous Integration from Git

Testing, code coverage, style enforcement are all check-in and merge requirements that can be automated and driven from Git. If you're among the rising number of Git users out there, you're in luck: You can automate pieces of your development workflow with Git hooks. Hooks are a native Git mechanism for firing off custom scripts before or after certain operations such as commit, merge, applypatch, ...

Alarm Notification

This tutorial describes how to use the alarm manager to set alarms and how to use the notification framework to display them. In short, the sequence goes like this: In an Activity AlarmManager.set is called with a PendingIntent containing a Uri. When the alarm goes off, the Uri is called triggering a BroadcastReceiver. In the BroadcastReceiver NotificationManager.notify is called with a PendingIntent. When the notification is clicked, the Activity in the PendingIntent is started. ...

DID vendors

So I have been researching DID vendors with limited success. So far my leading candidates are: Vendor ...

Parsing JSON in Shell scripts

This can be simple by using jq. This is a command line JSON processor. Here are a couple of examples of what can be done: $ cat json.txt { "name": "Google", ...

Yealink W52P

Yealink W52P So I was looking to replace my analog cordless phones mainly because I wanted to have a centralized way to maintain phonebooks. Right now I have two cordless phone that I have to manually enter phonebook entries on the two handsets independently. Initially I was thinking of getting small/cheap Android tablet and load it with a SIP soft phone. Trying with a couple of tablets I had was not very successful. On one hand my network topology did not work very well, on the other hand, the integration of the SIP soft phone with the directory and the other phone functions did not work as well as I expected. So when I came across the W52P, I was initially attracted to the low price. Grandstream had a cheaper phone, but it did not have remote phonebooks. After checking the documentation of the W52P, I confirmed that it did have a remote phonebook functionality. So bought it and tried it out. As a phone itself, it is about the same as the analog phones that it was replacing. The voice quality was pretty good. ...

Grandstream GXP1400

Grandstream GXP1400 The other day I replaced an analog phone with a Grandstream GXP1400 IP phone. I think it is a great value phone. It is one of the cheapest I could find yet supports all the features I was looking. Specifically I wanted a IP phone that could: Have a remote phone directory ...

Backing up GMail

The other day I found Gmvault. Gmvault is an open source Gmail backup software written in Python. This article provides a good overview on how it works (found it better than the Gmvault documentation): How to back up and restore Gmail account on Linux ...

assist

Assist is my archlinux scripted installation script. https://github.com/alejandroliu/assist By default it gives you a menu driven archlinux installation with supposedly sensible defaults. It has command line hooks so that you can perform automated installs using bash scripts to customize it. ...

SSH Tricks

A bunch of stupid SSH tricks that can be useful somehow, somewhere... Forcing either IPv4 or IPv6 This is for the scenario that you know which specific protocol works to reach a particular host. Usually good to eliminate the delay for SSH to figure out to switch IP protocols. For IPv4: ssh -4 [email protected] ...

Running Windows on Linux for Free

Microsoft is now making available Windows VM image for testing Internet Explorer for free. You can find them at: Modern IE testing Currently the following versions are available: Windows XP Professional SP3 + IE 6 or 8 Windows Vista + IE 7 Windows 7 + IE 8, 9, 10 or 11 Windows 8 + IE 11 ...

Remote VirtualBox

RemoteBox is a Remote VirtualBox UI. It is similar phpVirtualBox in that allows to manage VirtualBox remotely (on a potentially headless server). They differ in their requirements: RemoteBox does not require much on the server, but you need to install it on the client. phpVirtualBox only requires a browser and rdp viewer on the client, but requires a web server with PHP support on the server. ...

IPv6 testing

When trying to get on-to the IPv6 Internet, here are a couple of links to do diagnostics: http://www.subnetonline.com/pages/ipv6-network-tools/online-ipv6-ping.php This actually contain generic network tools. http://ds.testmyipv6.com/ Confirm if your browser is connecting through IPv6 ...

PingTool.org

Another short and sweet. This web site provides a number of on-line tools. Useful for diagnosing problems when setting a home server. http://pingtool.org/ ...

Web Backups

As usual with any IT system backups are important. This does not change when using a free shared hosting provider. Because it is free, one would argue it is even more important. For my wordpress web site I used something called cli-exporter. It let's you create "Wordpress" export files from the command line so it can be run from cron. This is important because backups have to be automated. In addition to that, I copy the backup files to an off-site location. I do this by copying files using WebDAV to a storage provider. I did this by writing a simple script and using the PHP library SabreDAV which makes writing DAV clients quite easy. I myself don't mind using other people's Open Source code to do something. I was actually surprised that I was not able to find something that meet my criteria. However, thanks to the power of open source I was able to find something that fit the bill exactly. To make things more interesting, because I wanted to keep backup files as compressed Zip archives, my backup scripts did not work in one of the web hosts that I was using. They did not have the zip extensions enabled. This is surprising considering is quite standard. Luckily I was able to find a pure PHP library pclzip. ...