Author Archive

Thanks to Daniel Holbach, the people testing uTouch and reporting back in the Multitouch Testing Tracker now appear in the Ubuntu Hall of Fame.

If you have been helping testing MT and you’re name does not appear there, is due to a bug in the ISO tracker, that prevents testers that haven’t set their Launchpad ID properly. This bug has been fixed, and it will be released in our next roll out of the testing tracker, but, in the mean while, there is a workaround that I explained in a previous post.

Please, if you are helping testing uTouch, check out how to appear in the Hall Of Fame.


Hello dear reader,

The latest code::blocks revision support now ldc compiller (LLVM D compiler). Now you can Devellop D application with this great IDE.

Install codeblocks repo

Install dany repo (thanks to sharkcz's )

Install or update code::blocks

$ su -c 'yum install codeblocks'

or

$ su -c 'yum updtate codeblocks'

Configuration of Projects

Go in Settings -> Compiler and Debugger

codeblocks

In search directories tabs set path to /usr/include/d

compiler and debugger 1

In linkker tabs for 64bits set path to /usr/lib64

compiler and debugger 2

In compiler setting tabs -> #defines a Tango and Posix

compiler and debugger 3

Untitled

| September 3rd, 2010

A few hours ago, Amazon launched a public preview of AWS Identity and Access Management (IAM) which is a powerful feature if you have a number of developers who need to access and to manage resources for an AWS account. A unique IAM user can be created for each developer and specific permissions can be doled out as needed.

You can also create IAM users for system functions, dramatically increasing the security of your AWS account in the event a server is compromised. That benefit is the focus of this article using an example frequently cited by EC2 users: Automating EBS snapshots on a local EC2 instance without putting the keys to your AWS kingdom on the file system.

Before the release of AWS IAM, if you wanted to create EBS snapshots in a local cron job on an EC2 instance, you needed to put the master AWS credentials in the file system on that instance. If those AWS credentials were compromised, the attacker could perform all sorts of havoc with resources in your AWS account and charges to your credit card.

With the launch of AWS IAM, we can create a system IAM user with its own AWS keys and all it is allowed to do is… create EBS snapshots! These keys are placed on the instance and used in the snapshot cron job. Now, an attacker can do very little damage with those keys if they are compromised, and we all feel much safer.

The AWS IAM documentation is required reading and a great reference. This article is only intended to serve as a practical introduction to one simple application of IAM.

These instructions assume you are running Ubuntu 10.04 (Lucid) on both your local system and on Amazon EC2. Adjust as appropriate for other distributions and releases.

IAM Installation

Ubuntu does not yet have an official software package for AWS IAM, so we need to download the IAM command line toolkit from Amazon. This can be done on any machine including your local desktop. The IAM command line tools require Java so we need to make sure that is installed as well.

Eventually, you’ll want to install this software somewhere more permanent, but for this demo, we’ll just use it from a subdirectory.

sudo apt-get install openjdk-6-jre unzip
export JAVA_HOME=/usr/lib/jvm/java-6-openjdk
wget http://awsiammedia.s3.amazonaws.com/public/tools/cli/latest/IAMCli.zip
unzip IAMCli.zip
export AWS_IAM_HOME=$(pwd)/IAMCli
export PATH=$PATH:$AWS_IAM_HOME

The AWS IAM tools require you to save your AWS account’s main access key id and AWS secret access key in yet another file format. Create this AWS credential file as, say, $HOME/.aws-credentials-master.txt in the following format (replacing the values with your own credentials):

AWSAccessKeyId=YOURACCESSKEYIDHERE
AWSSecretKey=YOURSECRETKEYHERE

Note: The above is the sample content of a file you are creating, and not shell commands to run.

Protect the above file and set an environment variable to tell IAM where to find it:

export AWS_CREDENTIAL_FILE=$HOME/.aws-credentials-master.txt
chmod 600 $AWS_CREDENTIAL_FILE

We can now use the iam-* command line tools to create and manage AWS IAM users, groups, and policies.

Create IAM User

How you manage your users and groups is sure to be a personal preference that is fine tuned over time, but for the purposes of this demo, I’ll propose that for tracking purposes we put non-human users into a new group named “system”.

iam-groupcreate -g system

Create the snapshotter system user, saving the keys to a file:

user=snapshotter
iam-usercreate -u $user -g system -k | tee $HOME/.aws-keys-$user.txt
chmod 600 $HOME/.aws-keys-$user.txt

You will want to have this snapshotter keys file on the EC2 instance, so copy it there:

rsync -Paz $HOME/.aws-keys-$user.txt REMOTEUSER@REMOTESYSTEM:

Allow IAM user snapshotter to create EBS snapshots of any EBS volume:

iam-useraddpolicy \ -p allow-create-snapshot \ -e Allow \ -u $user \ -a ec2:CreateSnapshot \ -r '*'

There’s a lot of preparatory and other commands in this article, but take a second to focus on the fact that the core, functional steps are simply the iam-usercreate and iam-useraddpolicy commands above. Two commands and you have a new AWS IAM user with restricted access to your AWS account.

Create EBS Snapshot

For the purposes of this demo, we’ll assume you’re using the ec2-consistent-snapshot tool to create EBS snapshots with a consistent file system and perhaps a consistent MySQL database. (If you’re not using this tool, then you could have simply used ec2-create-snapshot from any computer without having to go through the trouble of creating a new IAM user.)

Make sure you have the latest ec2-consistent-snapshot software installed on the EC2 instance:

sudo add-apt-repository ppa:alestic/ppa
sudo apt-get install ec2-consistent-snapshot

Create the snapshot on the EC2 instance. Adjust options to fit your local EBS volume mount points and MySQL database setup.

sudo ec2-consistent-snapshot \ --aws-credentials-file $HOME/.aws-keys-snapshotter.txt \ --xfs-filesystem /YOURMOUNTPOINT \ YOURVOLUMEID

Follow similar steps to create users and set policies for other system activities you perform on your EC2 instances. IAM can control access to many different AWS resource types, API calls, specific resources, and has even more fine tuned control parameters including time-based restrictions.

The release of AWS Identity and Access Management alleviates one of the biggest concerns security-conscious folks used to have when they started using AWS with a single key that gave complete access and control over all resources. Now the control is entirely in your hands.

Cleanup

If you have followed the steps in this demo and you wish to undo most of what was done, here are some steps for reference.

Delete the IAM user and the IAM group:

iam-userdel -u $user -r
iam-groupdel -g system

Wipe the credentials and keys files and remove the downloaded and unzipped IAM command line toolkit:

sudo apt-get install wipe
wipe $HOME/.aws-credentials-master.txt \ $HOME/.aws-keys-$user.txt
rm IAMCli.zip
rm -r $AWS_IAM_HOME

Make sure to wipe the snapshotter key file on the remote EC2 instance as well.

Support

If you’re looking for help with AWS IAM, there is a new AWS IAM forum dedicated to the topic.

Canonical Design Team: In Brazil?!

| September 3rd, 2010

Came in this morning to a mail from Rick, my Meerkat who went for a walk a little while ago.

Apparently he was giving a keynote at Linuxcon!!

" ... Thanks all for coming, have a great conference!"

More as I get it …


Richard Darst: DebConf Fundraising

| September 3rd, 2010

The following post is the work of Pablo Duboue, the DebConf10 fundraising team leader.

So you want to make DebConf, eh? You will need quite a bit of money then. That's when fundraising comes into play.

There are traditionally two sources for funds for DebConf: government and businesses. A third one, micro-donors, has been mentioned, but haven't been explored yet. (Note, in this text I use the terms sponsors and donors interchangeably, as all sponsors are actually doing a donation to the Debian project earmarked for the use at a given DebConf.)

Government funding has been key in a number of DebConfs. In DC10, though, by the time fundraising proper started, it was too late to secure it. Extrapolating from two DebConfs that had government funding, I would venture the following two pieces of advice: target a government level as local as possible (city, provincial level) and try to secure the funding at the time of the bid (which, by the way, can help you win the bid). A successful process will include government representatives aware of the bid status and the whole bidding process. This partnership can help unlock extra government resources such as housing or transportation. But to reiterate, if you haven't at least applied for government grants by the time the DebConf previous to yours is happening, then you have to plan to go along without government funding.

Business funding for DebConf includes a significant amount of recurring donors. Keeping them happy is even more important than any money they will put forward for a given DebConf. Now, because of the high level of recurrence and the fact that government funding can cover easily one third of our costs, fundraising without government funding really means your projected funds are one third off. If that is the case, make sure to communicate that to the rest of debconf-team and even the larger Debian community (see below "asking for help").

This entry has been truncated read the full entry.

In the editor (Mozilla Composer, Nvu, KompoZer), there is a dialog for image insertion. That dialog shows a preview of the currently selected image. That preview relies on the following code:

  1. load the image inside an <html:img> element
  2. wait until it's loaded
  3. get its natural width and height
  4. resize the image to make it fit nicely in its container box, whatever the width and height of the image
With the help of CSS 3 Backgrounds, this code is gone and all we have now is:
  1. load the image as the background image of <xul:box> element

with the following CSS styles on that box:

background-size: contain;
background-repeat: no-repeat;
background-position: center;

-)

Danh sách Những ứng dụng nguồn mở dành cho doanh nghiệp xuất sắc nhất năm 2010 đã được InfoWorld bình chọn bao gồm bốn nhóm: Ứng dụng, phần mềm phát triển ứng dụng, nền tảng và tầng trung, phần mềm mạng. Giải thưởng BOSSIE Awards 2010 – Nguồn: InfoWorld Chín chương trình thuộc nhóm Ứng dụng nhận giải [...]

While I’m not convinced that Sweden will actually win the world cup there’s lots to like about this “five minutes into the future” look at how we might share content and interact with devices in a few years time. I’m setting a reminder in my calendar. I’ll catch you in 5 years, see if we made it ;)

There are more videos on the http://www.youtube.com/user/TATMobileUI.

Discovered via the delightful Steve Clayton’s blog.


In an earlier post I talked about Fedora supplemental wallpapers and our effort to check the license, the replies are positive but I wanted to share with the world one heart warming reply from one of the photographers I contacted:
I'm honored that you chose one of my photos, and I'm quite happy with your attribution mechanisms.

Feel free to contact me if I can be of any further help.

Thanks,

Nic

P.S. I teach computer science at the University of Minnesota, Morris, the public liberal arts campus of the U of M. Our CS lab has approximately 35 clients, all running Fedora Core. Thanks for your good work - it's nice to be able to contribute something small back.
See? Is not hard at all to become a contributor to FLOSS and Fedora.

Thank you Nic.