guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gnu: Add awesome.


From: ng0
Subject: Re: [PATCH] gnu: Add awesome.
Date: Mon, 13 Jun 2016 08:05:26 +0000

On 2016-06-13(10:12:35+1000), Carlo Zancanaro wrote:
> * gnu/packages/awesome.scm (awesome): New variable

Woo! many thanks, I've had a work in progree gathering dust for
a while, thanks for packaging this :)
.
> ---
>  gnu/packages/awesome.scm | 93 
> ++++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 93 insertions(+)
>  create mode 100644 gnu/packages/awesome.scm
>
> diff --git a/gnu/packages/awesome.scm b/gnu/packages/awesome.scm
> new file mode 100644
> index 0000000..6aa1f93
> --- /dev/null
> +++ b/gnu/packages/awesome.scm

I think gnu/packages/wm.scm is a better place, unless the forgotten files
add many awesome-wm related packages, which as well could be in
gnu/packages/lua.scm or other files then.

> @@ -0,0 +1,93 @@
> +;;; GNU Guix --- Functional package management for GNU
> +;;; Copyright © 2016 Carlo Zancanaro <address@hidden>
> +;;;
> +;;; This file is part of GNU Guix.
> +;;;
> +;;; GNU Guix is free software; you can redistribute it and/or modify it
> +;;; under the terms of the GNU General Public License as published by
> +;;; the Free Software Foundation; either version 3 of the License, or (at
> +;;; your option) any later version.
> +;;;
> +;;; GNU Guix is distributed in the hope that it will be useful, but
> +;;; WITHOUT ANY WARRANTY; without even the implied warranty of
> +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> +;;; GNU General Public License for more details.
> +;;;
> +;;; You should have received a copy of the GNU General Public License
> +;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
> +
> +(define-module (gnu packages awesome)
> +  #:use-module ((guix licenses) #:prefix license:)
> +  #:use-module (guix packages)
> +  #:use-module (guix download)
> +  #:use-module (guix build-system cmake)
> +  #:use-module (guix build-system glib-or-gtk)
> +  #:use-module (gnu packages freedesktop)
> +  #:use-module (gnu packages glib)
> +  #:use-module (gnu packages gperf)
> +  #:use-module (gnu packages gtk)
> +  #:use-module (gnu packages image)
> +  #:use-module (gnu packages imagemagick)
> +  #:use-module (gnu packages libevent)
> +  #:use-module (gnu packages lua)
> +  #:use-module (gnu packages pkg-config)
> +  #:use-module (gnu packages xdisorg)
> +  #:use-module (gnu packages xorg))
> +
> +(define-public awesome
> +  (package
> +    (name "awesome")
> +    (version "3.4.15")

Is 3.4.15 the latest? I use 3.5.9 here, and this was what I targeted
with my work in progress.

> +    (source
> +     (origin (method url-fetch)
> +             (uri (string-append 
> "https://awesome.naquadah.org/download/awesome-";
> +                                 version ".tar.xz"))
> +             (sha256
> +              (base32
> +               "1m910lr7wkw2dgzmirfvz7dasfswhhccdf65l21iiciv24c3w1bb"))))
> +    (build-system cmake-build-system)
> +    (native-inputs `(("pkg-config" ,pkg-config)))
> +    (inputs `(("cairo" ,cairo)
> +              ("dbus" ,dbus)
> +              ("gdk-pixbuf" ,gdk-pixbuf)
> +              ("glib" ,glib)
> +              ("gperf" ,gperf)
> +              ("imlib2" ,imlib2)
> +              ("libev" ,libev)
> +              ("libxcb" ,libxcb)
> +              ("libxcursor" ,libxcursor)
> +              ("libxdg-basedir" ,libxdg-basedir)
> +              ("lua" ,lua-5.1)
> +              ("pango" ,pango)
> +              ("startup-notification" ,startup-notification)
> +              ("xcb-util" ,xcb-util)
> +              ("xcb-util-cursor" ,xcb-util-cursor)
> +              ("xcb-util-image" ,xcb-util-image)
> +              ("xcb-util-keysyms" ,xcb-util-keysyms)
> +              ("xcb-util-renderutil" ,xcb-util-renderutil)
> +              ("xcb-util-wm" ,xcb-util-wm)
> +              ("imagemagick" ,imagemagick)))

it requires also lua-lgi, at least with 3.5.9 version. I can give you the wip
of that if it only got in with 3.5.x and you need it.

Building the documentation also requires doxygen and graphviz in case you want
to add a second output for them - I never made it that far and can't tell if the
docs are very big.

> +    (arguments `(#:phases (modify-phases %standard-phases
> +                            (replace 'check
> +                              (lambda* _
> +                                (zero? (system* "../build/awesome" 
> "-v")))))))
> +    (synopsis "Highly configurable, next generation framework window manager
> +for X")
> +    (description
> +     "awesome is a window manager for X.  It manages windows in different
> +layouts, like floating or tiled.  Any layout can be applied dynamically,
> +optimizing the environment for the application in use and the task currently
> +being performed.
> +
> +In a tiled layout, windows are managed in a master and stacking area.  The
> +master area contains the windows which currently need the most attention,
> +whereas the stacking area contains all other windows.  In a floating layout
> +windows can be resized and moved freely.  Dialog windows are always managed 
> as
> +floating, regardless of the layout currently applied.  The spiral and dwindle
> +layouts are special cases of the tiled layout where the stacking area is
> +arranged in a spiral for the former or as a rectangular fractal for the 
> later.
> +
> +Windows are grouped by tags in awesome.  Each window can be tagged with one 
> or
> +more tags.  Selecting certain tags displays all windows with these tags.")
> +    (license license:gpl2)
> +    (home-page "https://awesome.naquadah.org/";)))
> --
> 2.7.3
>
>

--
♥Ⓐ ng0
For non-prism friendly talk find me on
psyced.org / loupsycedyglgamf.onion

Attachment: signature.asc
Description: Digital signature


reply via email to

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