Dolt - a high-performance drop-in libtool replacement About Dolt Dolt provides a drop-in replacement for libtool that significantly decreases compile times on the platforms it supports. Rather than the libtool approach of running a large script for every compile that repeatedly figures out how to build libraries on the platform, dolt figures out those details at configure time and writes out a minimal doltcompile script containing only the commands needed to build a library on the current platform. If you use automake, autoconf, and libtool, then using dolt just requires two steps: 1. add DOLT after the call to LT_INIT, AC_PATH_LIBTOOL, or AM_PATH_LIBTOOL in your configure.ac or configure.in script, and 2. append dolt.m4 to your project's acinclude.m4. For any platform Dolt does not support, it will transparently fall back to libtool.
"Nix is a purely functional package manager. It allows multiple versions of a package to be installed side-by-side, ensures that dependency specifications are complete, supports atomic upgrades and rollbacks, allows non-root users to install software, and has many other features. It is the basis of the NixOS Linux distribution, but it can be used equally well under other Unix systems."
A next-generation package manager called Nix provides a simple distribution-independent method for deploying a binary or source package on different flavours of Linux. Even better, Nix does not interfere with existing package managers. Nix allows different versions of software to live side by side, and permits sane rollbacks of software upgrades. Nix is a useful system administration tool for heterogeneous environments and developers who write software supported on different libraries, compilers, or interpreters. Why provide yet another package manager? Because current package managers fall short in the upgrade cycle. Everyone gets burnt by software dependencies, at some point. In particular, with a major release of any given distribution, many people choose not to upgrade until it is time to do a fresh install. With Nix, upgrades are always safe: they don't overwrite previously installed packages. This means previous versions will continue to work, and you can easily roll back.
The Little Book of Semaphores is a free (in both senses of the word) textbook that introduces the principles of synchronization for concurrent programming. In most computer science curricula, synchronization is a module in an Operating Systems class. OS textbooks present a standard set of problems with a standard set of solutions, but most students don't get a good understanding of the material or the ability to solve similar problems. The approach of this book is to identify patterns that are useful for a variety of synchronization problems and then show how they can be assembled into solutions. After each problem, the book offers a hint before showing a solution, giving students a better chance of discovering solutions on their own. The book covers the classical problems, including "Readers-writers," "Producer-consumer", and "Dining Philosophers." In addition, it collects a number of not-so-classical problems
September 25, 2008 by Hughes (Erlang) Let’s say you want to give a try to Erlang (Discover our post about Why Erlang?) for your next web development project and you want to be up and running as quickly as possible… you just landed smoothly in the right place. This post is the starting point of a series of posts in which I’m going to provide you with all the commands you’ll need to set up an Ubuntu 8.04 server loaded with Erlang, Mochiweb proxied by Nginx. In the same series, I’ll also cover: * The basic configuration of Postfix (mail) * The use of Imagemagick to create dynamically a captcha for your application * The configuration of Bind9 in order to play with the url CNAME The goal here is not to set up an hardened production server with all the optimizations
CryoPID allows you to capture the state of a running process in Linux and save it to a file. This file can then be used to resume the process later on, either after a reboot or even on another machine. Status CryoPID was spawned out of a discussion on the Software suspend mailing list about the complexities of suspending and resuming individual processes. CryoPID consists of a program called freeze that captures the state of a running process and writes it into a file. The file is self-executing and self-extracting, so to resume a process, you simply run that file. See the table below for more details on what is supported. Features Current features are: * Can run as an ordinary user! (no root privileges needed) * Works on both 2.4 and 2.6. * Works on x86 and AMD64. * Can start & stop a process multiple times * Can migrate processes between machines and between kernel versions (tested between 2.4 to 2.6 and 2.6 to 2.4).
Referencer is a Gnome application to organise documents or references, and ultimately generate a BibTeX bibliography file. Referencer includes a number of features to make this process easier: * Smart web links Referencer uses documents' metadata to provide handy links to the document's web location — no need to maintain your own bookmarks. * Import from BibTeX, Reference Manager and EndNote No need to start from scratch — Referencer will import your existing bibliography files using the BibUtils library. * Tagging No need to organise your documents into rigid directory trees — with Referencer you can use tags to categorise your documents. * Automatic arXiv, PubMed and CrossRef metadata retrieval If you show Referencer a PDF which has an arXiv ID or DOI code, Referencer will retrieve the metadata for this document over the internet. * Python plugin support Referencer can be extended using the versatile Python scripting language. * Localisation
This is a hack that makes your machine appear (to unix traceroute) to be anywhere on the internet. Specifically, you can define a route to append to the real route that any arbitrary host on the internet would see.