[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] gnu: Add cpulimit.
From: |
宋文武 |
Subject: |
Re: [PATCH] gnu: Add cpulimit. |
Date: |
Wed, 16 Dec 2015 09:20:52 +0800 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
Eric Bavier <address@hidden> writes:
> * gnu/packages/admin.scm (cpulimit): New variable.
> ---
> gnu/packages/admin.scm | 39 ++++++++++++++++++++++++++++++++++++++-
> 1 file changed, 38 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
> index 5b9f5d1..1d90619 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,40 @@ 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"))))
Put 'lambda' on next line to satify 80 chars limit.
> + (replace
> + 'install
Put 'install' on previous line to keep consistency.
> + (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
> +percentage of CPU.")
> + (license license:gpl2+)))
Look good!