Browsing projects by Tag(s)

Select a tag to browse associated projects and drill deeper into the tag cloud.

Showing page 1 of 1

MPD

Compare

Music Player Daemon (MPD) allows remote access for playing music (MP3, Ogg Vorbis, FLAC, AAC, Mod, and wave files) and managing playlists. MPD is designed for integrating a computer into a stereo system that provides control for music playback over a local network. It is also makes a great desktop ... [More] music player, especially if you are a console junkie, like frontend options, or restart X often. [Less]

4.57895
   
  0 reviews  |  191 users  |  63,519 lines of code  |  19 current contributors  |  Analyzed about 18 hours ago
 
 

PackageKit is a D-Bus abstraction layer that allows the session user to manage packages in a secure way using a cross-distro, cross-architecture API.

4.6
   
  0 reviews  |  20 users  |  102,695 lines of code  |  27 current contributors  |  Analyzed 5 days ago
 
 

Mosquitto is an implementation of an MQTT version 3.1 broker.

5.0
 
  0 reviews  |  2 users  |  42,250 lines of code  |  4 current contributors  |  Analyzed 7 days ago
 
 

Will effectively daemonize a running Python script. Tested and used with Python 2.6 NEWS: Released version 0.0.4 of Supay! We have also changed the licensing from GPL to MIT (if that is blokcing anyone to actually use Supay) Note: When migrating the whole Supay project from SVN to Mercurial in ... [More] Google Code we lost all our tests. MethodsThere are a few methods available with the module, here a short description of each one: start Detaches a Python script from the terminal and assigns a PID to the process stop Finds the process with the matching PID and stops it. spawn Will create a new instance of the Python script (Warning: this should time out or you will not be able to stop the process.) restart Although there is no 'restart' method, you can easily integrate the stop and restart together so they can perform a full restart of your daemon. New!status This is a very easy way to check the status your script. It will return information on the terminal about the specific PID of your process and if it is running or not. To be implementedOne of the main issues of having a Daemon with a PID is how to lock the PID file so that no other process can re-write the file while the daemon is running. Text files are not meant for effective locking. It can work, but it not as safe as data bases: SQLITE3 PID Manager It will receive a parent PID and will show information about child PIDs. PID Lock One of the added values of a database: a parent PID will be able to lock a file to prevent PID corruption. Some history about SUPAYIn the ancient language of Quechua (still used today in some regions of South America, like Peru, Bolivia and Ecuador) Supay was the word to refer to Demons. Although different in significance, I decided to revive a rather unknown word to refer to this small module. InstallationIf you have Setup Tools installed (along with Python) in your machine you can do: sudo easy_install supayIf you download the tar.gz file, uncompress everything and use the setup.py file to install it" python setup.py installUsageStartTo use the "start" method: from supay import Daemon def run(): daemon = Daemon(name='thisScript') daemon.start() while True: do_something()StopEven easier to use the "stop" method: def stop() daemon.stop() New in version 0.0.4: We fixed a verification method when a daemon has died for some reason but the PID has been left behind. As you know, the start method will check if the PID exists so this check will remove the PID if the process does not exist. We are also including the ability to spawn a process (also known as creating a child process). Beware! spawning processes should be able to TIME OUT. They are cut off the ability of stopping with no PID file to write. This is a good way of dealing with calls to your script that you want to handle separately. SpawnTo spawn: def spawn(): daemon.spawn_child() do_something() # and then expire! StatusCheck the process status: def status(): daemon.status()TestsIf you download the tar.gz file, a tests directory will include all the tests. I have used Nose to run my tests and I suggest you run them with that tool within the uncompressed directory: nosetests -vDeafultsSupay does some things by default. Tries to write a PID file to "/var/run/scriptName" Gives an error if you do not have permissions. You can also change this when initializing the Daemon class. Stderr, Stdout and Stdin all try to write to "/var/log/scriptName" If a name for the running script is not given "PythonDaemon" is used. Verbose is set to True, this will show output when starting or stopping the daemon at the terminal. Note on PermissionsIf you use this module with sudo or root permissions and the default values, you should see no errors. But a lot of times, using super user powers to run a simple script might be a security problem. To avoid running this module as root change the PID and LOG options when initializing the module: from supay import Daemon daemon = Daemon(name='myScript', pid_dir='/home/me', stdin='/home/me/logs', stdout='/home/me/logs', stderr='/home/me/logs') daemon.start() Daemon or Service?A bit of inspiration came from reading PEP-3143. After talking to the author of that PEP, I was told that what I wanted to develop was not a Daemon library, but more a Service library. My reasoning behind building something more than a simple daemon library was this: A pure Daemon libraryWould make sure to daemonize correctly a process and nothing else. What Supay is intended forDaemonize a Python process (a script or a call) Accept calls to STOP, START, SPAWN child processes. Manage processes PID numbers. Check the STATUS of a process. Redirect output (stderr, stdin, stdout) to a log file. As you can see, I am not interested in a simple standard daemonizing module, and although PEP-3143 was used as a start point, the functionality behind SUPAY goes way beyond that. Questions? Requests?You can always send me an email: alfredodeza at gmail dot com [Less]

0
 
  0 reviews  |  1 user  |  606 lines of code  |  0 current contributors  |  Analyzed over 1 year ago
 
 

A library for writing a daemon in PHP that can handle massive amounts of client and server connections

0
 
  0 reviews  |  1 user  |  506 lines of code  |  0 current contributors  |  Analyzed over 1 year ago
 
 

An HDMI-CEC library (libcec) as well as a Linux daemon (cecd)

0
 
  0 reviews  |  0 users  |  3,882 lines of code  |  0 current contributors  |  Analyzed 5 days ago
 
 

libnetutils basically abstracts some of the dreary bits of unix network programming under a very thin layer, making it easier to use, but not obscuring the underlying technology under something that is more complex to learn. It has grown out of collection of software I've built, and is a moving target. Development will continue here.

0
 
  0 reviews  |  0 users  |  35,313 lines of code  |  0 current contributors  |  Analyzed 8 days ago
 
 

Small http server library, can be embedded into your software easily. See also sample program for this library: http://bitbucket.org/kuy/libhttpd_sample/

0
 
  0 reviews  |  0 users  |  1,256 lines of code  |  0 current contributors  |  Analyzed about 12 hours ago
 
 

The XBee Controller project provides software to manage a network of XBee devices. One XBee device performs the role of Network Controller (as always) and this device is in API mode and connected to a computer via USB. Up to 64k XBee end devices may join the network. The daemon component of ... [More] this project connects to the controller XBee and also listens on one or more TCP ports. Any packets and other status information received from the XBee are encoded as a JSON string and forwarded to all connected clients. Any client can send a JSON-encoded 'TransmitPacket' message to send a packet over the XBee network. This allows the use of multiple diverse XBee devices in one network and over a LAN or the internet. [Less]

0
 
  0 reviews  |  0 users  |  0 current contributors
 
 
 
 

Creative Commons License Copyright © 2013 Black Duck Software, Inc. and its contributors, Some Rights Reserved. Unless otherwise marked, this work is licensed under a Creative Commons Attribution 3.0 Unported License . Ohloh ® and the Ohloh logo are trademarks of Black Duck Software, Inc. in the United States and/or other jurisdictions. All other trademarks are the property of their respective holders.