Language Selection

English French German Italian Portuguese Spanish

June 2007 (#139) Issue of Linux Gazette Online

Filed under
Linux

This month's issue of Linux Gazette is ready and online. This month's highlights include:

  • Creating an Unkillable Process

Annoying as unkillable processes can be, there are some circumstances where you might legitimately want to create one. For example, if I run an audit tool, or if I want to write a program that makes sure I go to bed on time even when I'm really stuck into something, then I might not want even the root user to be able to stop it from running.

One approach would be to simply disallow any root access to the system, or at least disallow it at critical times, but that can get very complex if you still need to be able to administrate the system and/or cannot tell with certainty which times will not be critical. So I wanted an approach that did not rely on disallowing root access altogether.

---

  • Installing Perl Modules as a Non-Root User

If you use Perl for anything more complex than the traditional (and boring) generation of "Hello, World", then it's also likely that you're familiar with those wonderful work-saving devices - Perl modules. Furthermore, chances are that you're also familiar with CPAN, the Comprehensive Perl Archive Network, and the easy interface to it that is provided by the CPAN module. That all works just great - assuming that you a) run a sensible modern OS like Linux, and Cool have root access to the machine you're using (or have a friendly and cooperative sysadmin). But what if those assumptions don't hold true? What if, for example, you have a shell account on a machine run by some mega-corporation that doesn't feel like installing the Foo::Bar::Zotz::Blagger-0.01 module in their /usr/lib/perl? I, for one, can't blame them; a system-wide installation could open them up to unknown bugs galore. When your interests and theirs conflict, you lose every time - since they own the system.

So, what can we do if we really, really need that module but can't get it installed on a system-wide basis?

---

  • Writing PostgreSQL Functions in C

PostgreSQL is a powerhouse in its own right, but it is also extensible. You have a lot of options when it comes to extending PostgreSQL. You can use SQL, PL/pgSQL, PL/Tcl, PL/Perl, PL/Python, and more. Each option has its advantages. C has the advantage of speed, of course. Because PostgreSQL itself is written in C, writing C code also allows you to leverage some of PostgreSQL's own internal code. Your C code can also readily leverage any number of other programming libraries. C functions are also a stepping stone toward defining your own new PostgreSQL base types. Ready to get started? Great! Because instead of trying to butter you up with a witty preamble, I'm going to take you straight to work.

---

  • 2-Cent Tips

Recording ALSA PCM output as RAW data

I'd like to write a short tip here. Sometimes, you may want to record the PCM output stream, maybe for further sound analysis and such. How to do it?

You need to modify your ALSA setting e.g in /usr/share/alsa/alsa.conf and add below lines:

---

June 2007 (#139) Issue of Linux Gazette



More in Tux Machines

QNX 7 Can Be Fitted With A Qt5 Desktop

  • QNX 7 Can Be Fitted With A Qt5 Desktop
    While QNX remains targeted as an operating system for mobile/embedded solutions, a BlackBerry developer in his spare time has fitted QNX 7 with a Qt5 desktop. QNX 6 and prior had a desktop option, but was removed in QNX 7, which was released this past March. QNX 7.0 also brought support for 64-bit (and maintaining 32-bit) Intel x86 and ARM platforms along with C++14 support. For those wanting to experiment with QNX 7, a BlackBerry kernel developer has been working on making this operating system more desktop friendly.
  • Building a BlackBerry QNX 7 Desktop
    Having Qt allowed me to port one of my favourite applications, SpeedCrunch. It was a simple matter of running ‘qmake’ followed by ‘make’. Next, I ported the QTermWidget library so that I could have terminal windows.

Kernel Space/Linux

  • Kernel explained
  • [Older] [Video] Audio on Linux: The End of a Golden Age?
  • State of Sway April 2017
    Development on Sway continues. I thought we would have slowed down a lot more by now, but every release still comes with new features - Sway 0.12 added redshift support and binary space partitioning layouts. Sway 0.13.0 is coming soon and includes, among other things, nvidia proprietary driver support. We already have some interesting features slated for Sway 0.14.0, too! Today Sway has 21,446 lines of C (and 4,261 lines of header files) written by 81 authors across 2,263 commits. These were written through 653 pull requests and 529 issues. Sway packages are available today in the official repos of pretty much every distribution except for Debian derivatives, and a PPA is available for those guys.

Supporting Burning Platforms

  • Surface revenue does a U-boat, and dives

    Revenue generated by Microsoft's Surface hardware during the March quarter was down 26% from the same period the year before, the company said yesterday as it briefed Wall Street.

    For the quarter, Surface produced $831 million, some $285 million less than the March quarter of 2016, for the largest year-over-year dollar decline ever.

  • Acer said to me: "do not use our products with Linux. Find another manufacturer"
    Last year, I bought an Acer notebook and it came with Windows 10. As I didn't want spyware neither bloatware, I got Linux installed and asked for a refund of the OEM license. After a little of talking, they were wanting to charge me US$100 (to remove the license, which I already had wiped, as I got FDE Linux installed) to refund US$70 of the OEM license. This year, wondering to buy a new Acer notebook, I asked them again if they would refund me the OEM license without all the hassle (as they did pay me the US$70, without me having to pay the US$100).

today's howtos