guix-devel
[Top][All Lists]
Advanced

[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!



reply via email to

[Prev in Thread] Current Thread [Next in Thread]