03 Mar 2015

feedPlanet Arch Linux

March for TalkingArch

It's new and it's live on the Talkingarch website. We present to you the latest and greatest TalkingArch live iso, which offers the latest versions of all core packages as well as Linux kernel 3.18.6. As always, you will find this iso on the TalkingArch download page, available via either a direct link or a [...]

03 Mar 2015 4:21pm GMT

02 Mar 2015

feedPlanet Arch Linux

QuickBlob

csv-blobs improvements: windows binary, more speed, dramatically less memory

02 Mar 2015 4:51am GMT

01 Mar 2015

feedPlanet Arch Linux

Updating Arch Kernel On Digital Ocean

I have not bothered updating my Linux kernel package here since my VPS provider - Digital Ocean - went crazy and deprecated Arch Linux as an install option. That is obviously a bad thing… This backfired on me today. It Continue reading

01 Mar 2015 6:33pm GMT

25 Feb 2015

feedPlanet Arch Linux

QuickBlob

More performance gains!

25 Feb 2015 11:37am GMT

23 Feb 2015

feedPlanet Arch Linux

Improvements on Manjaro Security Updates

I'll give credit where it is due. I had previously criticized Manjaro for holding back all package updates as this ignored security issues. But it appears that Manjaro has a new security policy, which means that packages that are rated Continue reading

23 Feb 2015 3:03pm GMT

21 Feb 2015

feedPlanet Arch Linux

Fanmail

Posting so more people can get entertainment value from this email. From: Daniel Skowroński <daniel@dsinf.net> Subject: -asroot Hi Allan, I'd like to say you are moron if you were thinking that commiting 61ba5c961e4a3536c4bbf41edb348987a9993fdb to pacman was good idea! I am Continue reading

21 Feb 2015 9:31pm GMT

15 Feb 2015

feedPlanet Arch Linux

xorg-server 1.17.1 is now available

The new version comes with the following changes:

15 Feb 2015 1:06pm GMT

09 Feb 2015

feedPlanet Arch Linux

February 2015’s TalkingArch is here

Announcing the February 2015 release of TalkingArch. This version updates the system packages to their latest versions, including the 3.18.4 Linux kernel. The brltty-minimal package that is included with this version is still somewhat older than the latest version of brltty, but this should be fixed in the March release. As usual, you will find [...]

09 Feb 2015 5:56am GMT

29 Jan 2015

feedPlanet Arch Linux

python-zarafa monthly update Januari

It's a new year, so it's also time for a new update about python-zarafa. The last update was in October and a lot of new improvements and features have been added. In this article I'll walk through the new features and improvements. A detailed git changelog can be found at the end of the article.

Scripts

We added a lot of new example scripts to the Github repository.

OutofOffice

Python-zarafa now has support for setting and getting Outofoffice information.

>>> bob = zarafa.Server().user('bob')
>>> bob.outofoffice.update(enabled=True, message='I am out of office', subject='Out of office')
>>> print 'enabled: %s, message: %s, subject: %s' % (bob.outofoffice.enabled, bob.outofoffice.message, bob.outofoffice.subject)
enabled: True, message: I am out of office, subject: Out of office
# It is also possible to set indiviual properties
>>> bob.outofoffice.enabled = False
>>> bob.outofoffice.subject = 'Hi, I am out of office till 30 October.'

Quota

Another new feature is Quota support, there was already support for reading Quota information in python-zarafa but now there is partial support for setting user Quota's. Setting Quota's is still work in progress, so expect that it might contain some bugs and feel free to report them to our Github tracker!

>>> bob = zarafa.Server().user('bob')
>>> print zarafa._bytes_to_human(bob.quota.hard_limit)
100 mb
>>> bob.quota.hard_limit = zarafa._human_to_bytes('200 mb')
>>> print zarafa._bytes_to_human(bob.quota.hard_limit)
200 mb

Creating and sending an email

This is probably the most interesting feature for python-zarafa, the ability to create an new mail item and sending it.

>>> mail = bob.outbox.create_item(subject='new mail', to='bob@zarafa.local', body='This is my plaintext body')
>>> print 'subject=%s, to=%s, body=%s'  % (mail.subject, mail.to[0], mail.body.text)
subject=new mail, to=Address(bob@zarafa.local), body=This is my plaintext body
>>> mail.send()
>>> print list(bob.inbox.items())
[Item(new mail)]

This is also a work in progess feature, since not all of the extra properties can be set yet (importance, etc.) .It should be enough to send an weekly email with for example quota information of all users.

Various fixes

We have done a lot of fixes and further polishing of the API, here is a short list of the interesting improvements

Feel free to create a feature request or bugreport in our Github bug tracker.

Git shortlog

268d034 8 hours ago : Add description for rule.py and send.pyn-zarafa] 
7a37b71 8 hours ago : Add two new example scripts
5fd46e9 2 days ago : Add simple MAPI console client
8770159 3 days ago : Make the link for documentation bigger
268d034 8 hours ago : Add description for rule.py and send.py
7a37b71 8 hours ago : Add two new example scripts
5fd46e9 2 days ago : Add simple MAPI console client
8770159 3 days ago : Make the link for documentation bigger
4d4265c 3 days ago : Fix readme
8135740 6 days ago : describe quota stuff
2101902 7 days ago : Item.to: support 'name <email>' syntax
0db90b8 8 days ago : When a folder has no PR_DISPLAY_NAME check if it is the root folder else return an empty string
6461287 8 days ago : ignore orig files from patch
261c5ac 10 days ago : fix indent
df682da 10 days ago : update Quota cached values in def update
f0a443e 13 days ago : - Rename Quota._update to Quota.update so you can easily update all quota information
e2b94e7 2 weeks ago : Only support one archiverserver
653ea3c 2 weeks ago : rename Folder.empty(subfolder) arg to recurse for uniformity
3f7f861 2 weeks ago : Cleanup Property class: -self.mapiobj should probably point to SPropValue -overload __lt__ so sorted(props) works.. bit overkill perhaps -reduce arguments which can be easily deduced by Property.__init__ from SPropValue -avoid some local variables
e939d4c 2 weeks ago : Remove old comment
90eae11 3 weeks ago : Add support for setting Quota limits
bb12a2a 3 weeks ago : simplify updating outofoffice
0827a19 3 weeks ago : Example to show how to set Out of Office with python-zarafa
dff11c4 3 weeks ago : Simplify User.__init__ check, update docstrings
ad3796f 3 weeks ago : In zarafa.Server().users() arguments are switched
cb27fc3 3 weeks ago : Create a general _update() function for out of office information, to enable a one line update for oof info
72ada05 3 weeks ago : fix duplicated enties
f47b463 3 weeks ago : Add ability to set/read out of office settings of a uses #6
938ad50 3 weeks ago : Add basic item (de)serialization using pickle
c325e99 3 weeks ago : Add User.outofoffice
507ace3 4 weeks ago : apparently TBL_ALL_COLUMNS does not work for all tables.. so fall-back to flags=0
4bb5792 4 weeks ago : Add shortcut for getting user: zarafa.User(name)
bd05e17 5 weeks ago : Add unicode support to create_folder, add folder.get_folder, add folder.folder(create=True) flag to create non existing folders add folder.folder(name/entryid, recurse=False) to do a non-recursive search)
dc454c9 5 weeks ago :  "Ham" folder to exist in root of mail store.
9365478 5 weeks ago : Add several changes including the ability to change a folders name.
7918523 5 weeks ago : Store.tasks, property is set on root folder not store
05f55b4 5 weeks ago : Add store.journal and store.notes
3199b93 6 weeks ago : Merge pull request #16 from m42e/learnham
fdf2c22 6 weeks ago : Make configurable and autocreate folder
627478e 2 months ago : Added possibility to learn ham
cb27120 6 weeks ago : Merge pull request #12 from Faldon/master
25480b8 6 weeks ago : Made mandatory email property in create_user optional and provide a 'best guess' if not passed
7b568fd 7 weeks ago : Added mandatory email property on creating user. Added method for modifying/updating a user. Added constant INACTIVE_USER for inactive mailusers.
84f6169 7 weeks ago : Add definition for PS_INTERNET_HEADERS
7014793 7 weeks ago : Add support for the creation of a server-wide public store
c8777f4 7 weeks ago : open table with MAPI_UNICODE
fb77282 8 weeks ago : Fix recipienttable, since we don't pass MAPI_UNICODE
b8390da 8 weeks ago : Add optional dep vobject to readme
72d7dbf 9 weeks ago : Add delimiter for path
6353c4e 9 weeks ago : Return None instead of an except in user.archive_servers()
f939e20 9 weeks ago : search folders have no hierachy table, so no subfolders
1f403f5 9 weeks ago : fix import on some RHEL distros
a1704bc 9 weeks ago : Merge branch 'master' of github.com:zarafagroupware/python-zarafa
cd354e2 9 weeks ago : - Add folder.parent - Refactor folder.root option by using a try/except
3e7f903 10 weeks ago : Give maildir a path option
612c381 10 weeks ago : fix trailing whitespaces
330b464 10 weeks ago : use MAPI_UNICODE due to changes in python-mapi
a31f2ca 10 weeks ago : make Server.stores() return the public store
da5bb36 2 months ago : Use PR_SOURCEKEY to create the mapping so we do not an expensive lookup
e858500 3 months ago : Add import_ics script
e13bee2 3 months ago : Add z-tracer.py
7c2d0dc 3 months ago : Print folder names if move fails.
6496548 3 months ago : Fix order in which True is set.
af4ad91 3 months ago : Fix code styling
7a61122 3 months ago : Add new fix-ipm-subtree.py script, use at your own risk!!!
e332739 3 months ago : Have Store>Folder look at system folders
fcb4ad4 3 months ago : Add core updates
2f419af 3 months ago : Update python-zarafa core, add script remove-calendar-items.py

python-zarafa monthly update Januari was originally published by Jelle van der Waa at Jelly's Blog on January 30, 2015.

29 Jan 2015 11:00pm GMT

Practical fault detection & alerting. You don't need to be a data scientist


As we try to retain visibility into our increasingly complicated applications and infrastructure, we're building out more advanced monitoring systems. Specifically, a lot of work is being done on alerting via fault and anomaly detection. This post covers some common notions around these new approaches, debunks some of the myths that ask for over-complicated solutions, and provides some practical pointers that any programmer or sysadmin can implement that don't require becoming a data scientist.
read more

29 Jan 2015 2:08pm GMT

28 Jan 2015

feedPlanet Arch Linux

Who You Gonna Call?

Nobody… Arch Linux has the latest glibc release (2.20) so is not affected by the GHOST bug, which was fixed upstream in glibc-2.18 (without realising the security implications). For those that want to know more about security issues and updates Continue reading

28 Jan 2015 9:44am GMT

26 Jan 2015

feedPlanet Arch Linux

Transition of KDE software to the KDE Framework and Qt 5

The KDE Software Collection has been updated to KDE Applications 14.12.

The KDE developers have started porting their software to KDE Frameworks and Qt 5. For a list of the software that has been ported see the announcement.

When a KDE Frameworks port of a KDE application is considered stable, it is released with KDE Applications and development and bug fixes are no longer applied to the Qt4/KDE4 version. This means that as ported versions of applications are released, we will switch to the newer version. At the same time, we are getting rid of KDE module prefixes (e.g. kdebase-konsole -> konsole).

The result of this transition is that some packages will be using Qt5 and some will be using Qt4. We are working hard to make the transition smooth for KDE4 users, but things might look different depending on your configuration. Please adjust themes and colors as necessary for the two toolkits. See the wiki for help. We also recommend switching to Plasma 5.2 which will be released this week.

Please report upstream bugs to the KDE bugzilla. Feel free to CC me.

26 Jan 2015 10:20am GMT

20 Jan 2015

feedPlanet Arch Linux

Packaging changes in lirc 0.9.2

For consistency with upstream naming, the lirc-utils package was renamed to lirc. The wpc8769l kernel drivers were dropped and can be obtained by installing lirc-wpc8769l from the AUR.

Note that 0.9.2 is a major release and comes along with several upstream and packaging changes. In particular, the irexec.service systemd unit was removed. Please edit and copy the template /usr/share/lirc/contrib/irexec.service if you want to keep using that service.

20 Jan 2015 5:36pm GMT

19 Jan 2015

feedPlanet Arch Linux

Replacing “makepkg –asroot”

An alarming number of people have noticed, the pacman-4.2 release removed the --asroot option from makepkg. This means that you can no longer build packages as the root user. There are good reasons for this and the option was only Continue reading

19 Jan 2015 1:42pm GMT

18 Jan 2015

feedPlanet Arch Linux

Playing with overlayfs

Around this time last year, I posted about setting up a udev rule to run a script when I plugged my USB drive containing all of my music into one of my laptops; the script, a couple of lines of bash, removes all pre-existing symlinks to $HOME/Music and repopulates the directory with an updated set. Almost. The one flaw that has been an irritant of variable intensity, depending on what I felt like listening at any given time, is that the symlinks aren't written for directories that already exist on the target filesystem.

In order that I am able to play some music if I forget the USB drive, each of the laptops has a subset of albums on it, depending on the size of their respective hard drives. If I add a new album to the USB drive, then that change won't get written to either of the laptops when the drive is plugged in. Not entirely satisfactory. I had tinkered around with globbing, or with having find(1) scan deeper into the tree, or even a loop to check for the presence of directories in an array…

It just got too hard. My rudimentary scripting skills and the spectre of recursion, I am sorry to admit, conspired to undermine my resolve. So, rather than concede unconditional surrender, I asked for help. As is almost always the case in these situations, this proved to be a particularly wise move; the response I received was neither what I expected, nor was it anything I was even remotely familiar with: so in addition to an excellent solution (one far better suited to what I was trying to achieve), I learned something new.

The first comment on my question proved singularly insightful.

Care to use union mounts, for example via overlayfs?

muru on U&L unix.stackexchange.com/179397/…

A union mount, something until now I was blissfully unaware of, is according to Wikipedia,

a mount that allows several filesystems to be mounted at one time, appearing to be one filesystem.

Union mounting has a long and storied history on Unix, beginning in 1993 with the Inheriting File System (IFS). The genealogy of these mounts has been well covered in this 2010 LWN article by Valerie Aurora. However, it is only in the current kernel, 3.18, that a union mount has been accepted into the kernel tree.

After reading the documentation for overlayfs, it seemed this was exactly what I was looking for. Essentially, an overlay mount would allow me to "merge" the underlying tree (the Music directory on the USB drive) with an "upper" one, $HOME/Music on the laptop, completely seamlessly.

Then whenever a lookup is requested in such a merged directory, the lookup is performed in each actual directory and the combined result is cached in the dentry belonging to the overlay filesystem.

It was the just a matter of adapting my script to use overlayfs, which was trivial:

</p>

<h1>!/usr/bin/env bash</h1>

<h1>union mount Music when Apollo plugged in</h1>

<p>low=/media/Apollo/Music
upp=/home/jason/Music
wod=/home/jason/.local/tmp
export DISPLAY=:0
export XAUTHORITY=/home/jason/.Xauthority</p>

<h1>overlayfs mount</h1>

<p>mount -t overlay -o lowerdir="$low",upperdir="$upp",workdir="$wod" overlay "$upp"
status1=$?</p>

<p>mpc update &amp;>/dev/null
status2=$?</p>

<p>if [[ "$status1" -eq 0 &amp;&amp; "$status2" -eq 0 ]]; then</p>

<pre><code>printf "^fg(#BF85CC)%s\n" "Music directory updated" | dzen2 -p 3
</code></pre>

<p>fi

And now, when I plug in the USB drive, the contents of the drive are merged with my local music directory, and I can access whichever album I feel inclined to listen to. I can also copy files across to the local machines, knowing if I update the portable drive, it will no longer mean I have to forego listening to any newer additions by that artist in the future (without manually intervening, anyway).

Overall, this is a lightweight union mount. There is neither a lot of functionality, nor complexity. As the commit note makes clear, this "simplifies the implementation and allows native performance in these cases." Just note the warning about attempting to write to a mounted underlying filesystem, where the behaviour is described as "undefined".

Notes

Creative Commons image, mulitlayered jello by Frank Farm.

18 Jan 2015 7:20pm GMT

11 Jan 2015

feedPlanet Arch Linux

Opterator 0.5 Supports Function Annotations

Opterator is a decorator to make quick and clean command line interfaces for scripts. It's not designed to compete with argparse or click. Instead it supports that common usecase where you're writing a reusable script and don't want to write all the bits required for argument parsing, but also don't want to use the maligned […]

11 Jan 2015 11:26pm GMT