guix-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] fluxbox window manager


From: Leo Famulari
Subject: Re: [PATCH] fluxbox window manager
Date: Thu, 18 Feb 2016 18:22:41 -0500
User-agent: Mutt/1.5.24 (2015-08-30)

On Thu, Feb 18, 2016 at 11:17:12PM +0100, Danny Milosavljevic wrote:
> Hi,
> 
> first a few questions: 
> - How do I specify MIT license?

"MIT" is ambiguous. The x11 and expat licenses are commonly called "MIT"
so you must see which it is.

> - Is it safe to do 
>      $ ./pre-inst-env guix environment guix
>      $ guix system reconfigure /etc/config.scm 
>   in GuixSD in a git guix checkout? As a regular user or as root? If as root, 
> how exactly?

What are you trying to achieve here? I don't see the reason to enter a
build environment for Guix before reconfiguring.

In any case, only root can reconfigure. If you want to reconfigure
against a local source tree, you need to prefix the command with the
path to the relevant 'pre-inst-env' file.

> - It is possible to install git guix as normal guix so I don't need 
> pre-inst-env anymore?

It's not necessary to install it. You can just symlink
~/.config/guix/latest to your source tree. For example:

$ ln -s ~/src/guix ~/.config/guix/latest

That will be undone if you run `guix pull`.

>   For every user?

Yes, just apply the symlink for each user. But think about the
implications of doing it for root if the Guix source tree is owned by
your unprivileged user. You will be giving any software that runs as
your user a potential root privilege escalation.

I'll let somebody else review the patch, since I'm not familiar with
fluxbox.

> 
> Then a new file "gnu/packages/fluxbox.scm":
> ;;; GNU Guix --- Functional package management for GNU
> ;;; Copyright © 2014 Julien Lepiller <address@hidden>
> ;;; Copyright © 2016 Efraim Flashner <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 fluxbox)
>   #:use-module ((guix licenses) #:select (gpl2+))
>   #:use-module (guix packages)
>   #:use-module (guix download)
>   #:use-module (guix build-system gnu)
>   #:use-module (gnu packages image)
>   #:use-module (gnu packages fontutils)
>   #:use-module (gnu packages fribidi)
>   #:use-module (gnu packages pkg-config)
>   #:use-module (gnu packages xorg))
> 
> (define fluxbox.desktop
>   (origin
>     (method url-fetch)
>     (uri (string-append 
> "http://pkgs.fedoraproject.org/cgit/rpms/fluxbox.git/plain/fluxbox-xsessions.desktop?id=5f2e758b9eb0223d1baff07a339bcb6e0fbf765d";))
>     (file-name "fluxbox.desktop")
>     (sha256
>       (base32
>        "116kf72w3p8jr9l1mxd5qvxwh2rl8c2szyy6cgka667y693m89cy"))))
> 
> (define-public fluxbox
>   (package
>     (name "fluxbox")
>     (version "1.3.7")
>     (source (origin
>               (method url-fetch)
>               (uri (string-append
>                     "mirror://sourceforge/fluxbox/" 
>                     version 
>                     "/fluxbox-" 
>                     version 
>                     ".tar.xz"))
>               (sha256
>                (base32
>                 "1h1f70y40qd225dqx937vzb4k2cz219agm1zvnjxakn5jkz7b37w"))))
>     (build-system gnu-build-system)
>     (arguments 
>      '(#:phases
>        (modify-phases %standard-phases
>          (add-after 'install 'install-xsession
>                     (lambda* (#:key inputs outputs #:allow-other-keys)
>                       (let ((fbd "fluxbox.desktop")
>                             (dst (string-append (assoc-ref outputs "out")
>                                                 "/share/xsessions/")))
>                         (mkdir-p dst) 
>                         (copy-file (assoc-ref inputs fbd)
>                                    (string-append dst fbd))))))))
>     (native-inputs `(("pkg-config" ,pkg-config)
>                      ("fluxbox.desktop" ,fluxbox.desktop)))
>     (inputs `(("imlib2" ,imlib2)
>               ("libx11" ,libx11)
>               ("libxinerama" ,libxinerama)
>               ("libxrandr" ,libxrandr)
>               ("libxext" ,libxext)
>               ("libxrender" ,libxrender)
>               ("libxft" ,libxft)
>               ("freetype" ,freetype)
>               ("fribidi" ,fribidi)
>               ("libxpm"  ,libxpm)))
>     (synopsis "Window manager with tabs")
>     (description "Fluxbox is a window manager. 
> The *box visual style is well known for its minimalistic appearance.")
>     (home-page "http://fluxbox.org/";)
>     (license gpl2+))) ; FIXME
> 
> ;;; fluxbox.scm ends here
> 



reply via email to

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