[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
01/01: gnu: Add cpulimit.
From: |
Eric Bavier |
Subject: |
01/01: gnu: Add cpulimit. |
Date: |
Thu, 17 Dec 2015 02:59:10 +0000 |
bavier pushed a commit to branch master
in repository guix.
commit 44157e9f3c238c8ffcc18c64a8bc95dbd20b70b4
Author: Eric Bavier <address@hidden>
Date: Tue Dec 15 02:00:08 2015 -0600
gnu: Add cpulimit.
* gnu/packages/admin.scm (cpulimit): New variable.
---
gnu/packages/admin.scm | 43 ++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 42 insertions(+), 1 deletions(-)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 5b9f5d1..ee275f7 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -2,7 +2,7 @@
;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <address@hidden>
;;; Copyright © 2013 Cyril Roelandt <address@hidden>
;;; Copyright © 2014, 2015 Mark H Weaver <address@hidden>
-;;; Copyright © 2014 Eric Bavier <address@hidden>
+;;; Copyright © 2014, 2015 Eric Bavier <address@hidden>
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <address@hidden>
;;; Copyright © 2015 Alex Sassmannshausen <address@hidden>
;;; Copyright © 2015 Eric Dvorsak <address@hidden>
@@ -1233,3 +1233,44 @@ handles configuration-management, application
deployment, cloud provisioning,
ad-hoc task-execution, and multinode orchestration - including trivializing
things like zero downtime rolling updates with load balancers.")
(license license:gpl3+)))
+
+(define-public cpulimit
+ (package
+ (name "cpulimit")
+ (version "0.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/opsengine/cpulimit/archive/v"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1nn2w849xd5bw4y5sqnll29nxdwl5h0cv4smc7dwmpb9qnd2ycb4"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (delete 'configure)
+ (replace
+ 'build
+ (lambda _
+ (zero? (system* "make" "CC=gcc" "-Csrc"))))
+ (replace
+ 'check
+ (lambda _
+ (zero? (system* "make" "CC=gcc" "-Ctests"))))
+ (replace
+ 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin")))
+ (install-file "src/cpulimit" bin)))))))
+ (home-page "https://github.com/opsengine/cpulimit")
+ (synopsis "Limit CPU usage")
+ (description
+ "Cpulimit limits the CPU usage of a process. It does not change the nice
+value or other scheduling priority settings, but the real CPU usage, and is
+able to adapt itself dynamically to the overall system load. Children
+processes and threads of the specified process may optionally share the same
+limits.")
+ (license license:gpl2+)))