unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH 1/2] gnu: Add libtsm.
@ 2016-08-22 13:53 David Craven
  2016-08-22 13:53 ` [PATCH 2/2] gnu: Add kmscon David Craven
  2016-08-22 19:33 ` [PATCH 1/2] gnu: Add libtsm Leo Famulari
  0 siblings, 2 replies; 25+ messages in thread
From: David Craven @ 2016-08-22 13:53 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/admin.scm (libtsm): New variable.
---
 gnu/packages/admin.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 6d88e3b..5730b5a 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -13,6 +13,7 @@
 ;;; Copyright © 2016 Peter Feigl <peter.feigl@nexoid.at>
 ;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
 ;;; Coypright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1767,3 +1768,27 @@ the status of your battery in the system tray.")
 shortcut syntax and completion options.")
       (home-page "https://github.com/TrilbyWhite/interrobang")
       (license license:gpl3+))))
+
+(define-public libtsm
+  (package
+    (name "libtsm")
+    (version "3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://freedesktop.org/software/kmscon/releases/"
+                    "libtsm-" version ".tar.xz"))
+              (sha256
+               (base32
+                "01ygwrsxfii0pngfikgqsb4fxp8n1bbs47l7hck81h9b9bc1ah8i"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("libxkbcommon" ,libxkbcommon)))
+    (synopsis "Xterm state machine library")
+    (description "TSM is a state machine for DEC VT100-VT520 compatible
+terminal emulators.  It tries to support all common standards while keeping
+compatibility to existing emulators like xterm, gnome-terminal, konsole, etc.")
+    (home-page "https://www.freedesktop.org/wiki/Software/libtsm")
+    (license license:expat)))
-- 
2.9.0

^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH 2/2] gnu: Add kmscon.
  2016-08-22 13:53 [PATCH 1/2] gnu: Add libtsm David Craven
@ 2016-08-22 13:53 ` David Craven
  2016-08-22 18:10   ` Danny Milosavljevic
                     ` (2 more replies)
  2016-08-22 19:33 ` [PATCH 1/2] gnu: Add libtsm Leo Famulari
  1 sibling, 3 replies; 25+ messages in thread
From: David Craven @ 2016-08-22 13:53 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/admin.scm (kmscon): New variable.
---
 gnu/packages/admin.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 5730b5a..a8fcc90 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -43,6 +43,8 @@
   #:use-module (gnu packages)
   #:use-module (gnu packages base)
   #:use-module (gnu packages cyrus-sasl)
+  #:use-module (gnu packages freedesktop)
+  #:use-module (gnu packages gl)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages readline)
   #:use-module (gnu packages linux)
@@ -70,6 +72,7 @@
   #:use-module (gnu packages libftdi)
   #:use-module (gnu packages image)
   #:use-module (gnu packages xorg)
+  #:use-module (gnu packages xdisorg)
   #:use-module (gnu packages python)
   #:use-module (gnu packages man)
   #:use-module (gnu packages autotools)
@@ -1792,3 +1795,33 @@ terminal emulators.  It tries to support all common standards while keeping
 compatibility to existing emulators like xterm, gnome-terminal, konsole, etc.")
     (home-page "https://www.freedesktop.org/wiki/Software/libtsm")
     (license license:expat)))
+
+(define-public kmscon
+  (package
+    (name "kmscon")
+    (version "8")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://freedesktop.org/software/kmscon/releases/"
+                    "kmscon-" version ".tar.xz"))
+              (sha256
+               (base32
+                "0axfwrp3c8f4gb67ap2sqnkn75idpiw09s35wwn6kgagvhf1rc0a"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("libdrm" ,libdrm)
+       ("libtsm" ,libtsm)
+       ("libxkbcommon" ,libxkbcommon)
+       ("logind" ,elogind)
+       ("mesa" ,mesa)
+       ("pango" ,pango)
+       ("udev" ,eudev)))
+    (synopsis "Simple terminal emulator")
+    (description "Kmscon is a simple terminal emulator based on linux kernel
+mode setting (KMS).  It is an attempt to replace the in-kernel VT implementation
+with a userspace console.  See kmscon(1) man-page for usage information.")
+    (home-page "https://www.freedesktop.org/wiki/Software/kmscon")
+    (license license:expat)))
-- 
2.9.0

^ permalink raw reply related	[flat|nested] 25+ messages in thread

* Re: [PATCH 2/2] gnu: Add kmscon.
  2016-08-22 13:53 ` [PATCH 2/2] gnu: Add kmscon David Craven
@ 2016-08-22 18:10   ` Danny Milosavljevic
  2016-08-22 18:14     ` David Craven
  2016-08-22 19:34   ` Leo Famulari
  2016-08-24 18:16   ` Efraim Flashner
  2 siblings, 1 reply; 25+ messages in thread
From: Danny Milosavljevic @ 2016-08-22 18:10 UTC (permalink / raw)
  To: David Craven; +Cc: guix-devel

How does one use this as a VT?

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 2/2] gnu: Add kmscon.
  2016-08-22 18:10   ` Danny Milosavljevic
@ 2016-08-22 18:14     ` David Craven
  2016-08-22 18:17       ` David Craven
  0 siblings, 1 reply; 25+ messages in thread
From: David Craven @ 2016-08-22 18:14 UTC (permalink / raw)
  To: Danny Milosavljevic; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 282 bytes --]

By writing a service ;-) I have a wip I started on a while ago, but I
didn't get past a black screen, so it needs some debugging... Also
it's sadly been abandoned in favor of systemd-console, which is
basically the same thing rewritten by the same author inside the
systemd tree :/

[-- Attachment #2: 0001-wip-kmscon-service.patch --]
[-- Type: text/x-patch, Size: 2874 bytes --]

From 99b3ca3475507d9dc8df085ebb843909876c5a55 Mon Sep 17 00:00:00 2001
From: David Craven <david@craven.ch>
Date: Wed, 20 Jul 2016 13:17:07 +0200
Subject: [PATCH] wip kmscon service

---
 gnu/local.mk            |  1 +
 gnu/services/kmscon.scm | 56 +++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 57 insertions(+)
 create mode 100644 gnu/services/kmscon.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index b8c5378..8c6be96 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -382,6 +382,7 @@ GNU_SYSTEM_MODULES =				\
   %D%/services/dbus.scm				\
   %D%/services/desktop.scm			\
   %D%/services/dict.scm				\
+  %D%/services/kmscon.scm				\
   %D%/services/lirc.scm				\
   %D%/services/mail.scm				\
   %D%/services/mcron.scm			\
diff --git a/gnu/services/kmscon.scm b/gnu/services/kmscon.scm
new file mode 100644
index 0000000..da1eb2a
--- /dev/null
+++ b/gnu/services/kmscon.scm
@@ -0,0 +1,56 @@
+(define-module (gnu services kmscon)
+  #:use-module (gnu packages admin)
+  #:use-module (gnu packages kmscon)
+  #:use-module (gnu services)
+  #:use-module (gnu services shepherd)
+  #:use-module (guix gexp)
+  #:use-module (guix records)
+  #:use-module (srfi srfi-26)
+  #:export (kmscon-service))
+
+(define-record-type* <kmscon-configuration>
+  kmscon-configuration make-kmscon-configuration
+  kmscon-configuration?
+  (kmscon kmscon-configuration-kmscon)
+  (login-program kmscon-configuration-login-program)
+  (login-params kmscon-configuration-login-params)
+  (hwaccel? kmscon-configuration-hwaccel?))
+
+(define (kmscon-shepherd-service config)
+  "Return a <shepherd-service> for kmscon with CONFIG."
+  (define kmscon (kmscon-configuration-kmscon config))
+
+  (define kmscon-command
+    (append
+      (list
+        #~(string-append #$kmscon "/bin/kmscon")
+        "--login" (kmscon-configuration-login-program config))
+      (if (kmscon-configuration-hwaccel? config) '("--hwaccel") '())
+      (list
+        "--" (kmscon-configuration-login-params config))))
+
+  (list (shepherd-service
+    (documentation "kmscon virtual terminal")
+    (requirement '(user-processes))
+    (provision '(kmscon))
+    (start #~(make-forkexec-constructor #$@kmscon-command))
+    (stop #~(make-kill-destructor)))))
+
+(define kmscon-service-type
+  (service-type (name 'kmscon)
+    (extensions
+      (list (service-extension shepherd-root-service-type
+                               kmscon-shepherd-service)))))
+
+(define* (kmscon-service #:key
+  (kmscon kmscon)
+  (login-program #~(string-append #$shadow "/bin/login"))
+  (login-params "-p")
+  (hwaccel? #t))
+  "Run the @command{kmscon} daemon from @var{kmscon} to start a virtual terminal."
+  (service kmscon-service-type
+    (kmscon-configuration
+      (kmscon kmscon)
+      (login-program login-program)
+      (login-params login-params)
+      (hwaccel? hwaccel?))))
-- 
2.9.0


^ permalink raw reply related	[flat|nested] 25+ messages in thread

* Re: [PATCH 2/2] gnu: Add kmscon.
  2016-08-22 18:14     ` David Craven
@ 2016-08-22 18:17       ` David Craven
  0 siblings, 0 replies; 25+ messages in thread
From: David Craven @ 2016-08-22 18:17 UTC (permalink / raw)
  To: Danny Milosavljevic; +Cc: guix-devel

I forgot to mention, I think mesa needs some patches for this to work,
there are on the mailing list somewhere as libdrm update, mesa update,
mesa enable wayland flags.

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 1/2] gnu: Add libtsm.
  2016-08-22 13:53 [PATCH 1/2] gnu: Add libtsm David Craven
  2016-08-22 13:53 ` [PATCH 2/2] gnu: Add kmscon David Craven
@ 2016-08-22 19:33 ` Leo Famulari
  2016-08-22 20:54   ` David Craven
  1 sibling, 1 reply; 25+ messages in thread
From: Leo Famulari @ 2016-08-22 19:33 UTC (permalink / raw)
  To: David Craven; +Cc: guix-devel

On Mon, Aug 22, 2016 at 03:53:06PM +0200, David Craven wrote:
> * gnu/packages/admin.scm (libtsm): New variable.

I think it should go in terminals.scm.

> +    (license license:expat)))

Please check the source files for the variety of licenses they bear:
https://cgit.freedesktop.org/~dvdhrm/libtsm/tree/COPYING
https://cgit.freedesktop.org/~dvdhrm/libtsm/tree/LICENSE_htable

I also noticed some public domain code. I didn't do a thorough check.

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 2/2] gnu: Add kmscon.
  2016-08-22 13:53 ` [PATCH 2/2] gnu: Add kmscon David Craven
  2016-08-22 18:10   ` Danny Milosavljevic
@ 2016-08-22 19:34   ` Leo Famulari
  2016-08-24 18:16   ` Efraim Flashner
  2 siblings, 0 replies; 25+ messages in thread
From: Leo Famulari @ 2016-08-22 19:34 UTC (permalink / raw)
  To: David Craven; +Cc: guix-devel

On Mon, Aug 22, 2016 at 03:53:07PM +0200, David Craven wrote:
> * gnu/packages/admin.scm (kmscon): New variable.

Same comments as the libtsm patch.

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 1/2] gnu: Add libtsm.
  2016-08-22 19:33 ` [PATCH 1/2] gnu: Add libtsm Leo Famulari
@ 2016-08-22 20:54   ` David Craven
  2016-08-22 20:57     ` David Craven
  2016-08-22 21:08     ` Leo Famulari
  0 siblings, 2 replies; 25+ messages in thread
From: David Craven @ 2016-08-22 20:54 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

Ups, on the license thing, I was quick to push. If the licenses aren't
labeled with a title, how do I figure out what kind of license they
are?

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 1/2] gnu: Add libtsm.
  2016-08-22 20:54   ` David Craven
@ 2016-08-22 20:57     ` David Craven
  2016-08-22 21:08     ` Leo Famulari
  1 sibling, 0 replies; 25+ messages in thread
From: David Craven @ 2016-08-22 20:57 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

> Ups, on the license thing, I was quick to push. If the licenses aren't
> labeled with a title, how do I figure out what kind of license they
> are?

A decison flowchart would be nice... =P

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 1/2] gnu: Add libtsm.
  2016-08-22 20:54   ` David Craven
  2016-08-22 20:57     ` David Craven
@ 2016-08-22 21:08     ` Leo Famulari
  2016-08-22 21:46       ` David Craven
  1 sibling, 1 reply; 25+ messages in thread
From: Leo Famulari @ 2016-08-22 21:08 UTC (permalink / raw)
  To: David Craven; +Cc: guix-devel

On Mon, Aug 22, 2016 at 10:54:38PM +0200, David Craven wrote:
> Ups, on the license thing, I was quick to push. If the licenses aren't
> labeled with a title, how do I figure out what kind of license they
> are?

I usually do a web search on a sentence fragment.

Here are some good resources that usually pop up in the results:
https://www.gnu.org/licenses/
https://fedoraproject.org/wiki/Licensing:Main?rd=Licensing
https://opensource.org/licenses

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 1/2] gnu: Add libtsm.
  2016-08-22 21:08     ` Leo Famulari
@ 2016-08-22 21:46       ` David Craven
  2016-08-22 21:52         ` Leo Famulari
  0 siblings, 1 reply; 25+ messages in thread
From: David Craven @ 2016-08-22 21:46 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

>> How do I figure out what kind of license they are?
>
> I usually do a web search on a sentence fragment.

That works very nicely. Thank you!

What do I do if someone removes a word from a license text? :/

Permission to use, copy, modify, and/or distribute this software
for any purpose <with or> >and< without fee is hereby granted, provided
that the above copyright notice and this permission notice appear
in all copies.

> I also noticed some public domain code. I didn't do a thorough check.

What is considered a thorough check? Looking at each source file could
take hours on a larger codebase...

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 1/2] gnu: Add libtsm.
  2016-08-22 21:46       ` David Craven
@ 2016-08-22 21:52         ` Leo Famulari
  2016-08-22 21:58           ` David Craven
  0 siblings, 1 reply; 25+ messages in thread
From: Leo Famulari @ 2016-08-22 21:52 UTC (permalink / raw)
  To: David Craven; +Cc: guix-devel

On Mon, Aug 22, 2016 at 11:46:55PM +0200, David Craven wrote:
> >> How do I figure out what kind of license they are?
> >
> > I usually do a web search on a sentence fragment.
> 
> That works very nicely. Thank you!
> 
> What do I do if someone removes a word from a license text? :/
> 
> Permission to use, copy, modify, and/or distribute this software
> for any purpose <with or> >and< without fee is hereby granted, provided
> that the above copyright notice and this permission notice appear
> in all copies.

The new license bars us from redistributing the code for a fee? If so,
does that count as free software?

> > I also noticed some public domain code. I didn't do a thorough check.
> 
> What is considered a thorough check? Looking at each source file could
> take hours on a larger codebase...

Sometimes it takes a while...

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 1/2] gnu: Add libtsm.
  2016-08-22 21:52         ` Leo Famulari
@ 2016-08-22 21:58           ` David Craven
  2016-08-22 22:10             ` David Craven
  0 siblings, 1 reply; 25+ messages in thread
From: David Craven @ 2016-08-22 21:58 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

> The new license bars us from redistributing the code for a fee? If so,
> does that count as free software?

> But regardless of how you got your copies, you always have the freedom
> to copy and change the software, even to sell copies.

I guess not then. It has to be removed then?

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 1/2] gnu: Add libtsm.
  2016-08-22 21:58           ` David Craven
@ 2016-08-22 22:10             ` David Craven
  2016-08-22 22:25               ` David Craven
  0 siblings, 1 reply; 25+ messages in thread
From: David Craven @ 2016-08-22 22:10 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

>> The new license bars us from redistributing the code for a fee? If so,
>> does that count as free software?
>
>> But regardless of how you got your copies, you always have the freedom
>> to copy and change the software, even to sell copies.
>
> I guess not then. It has to be removed then?

I could also ask the author of those two files (wcwidth.h, wcwidth.c)
if he can make them available under the full ISC license...

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 1/2] gnu: Add libtsm.
  2016-08-22 22:10             ` David Craven
@ 2016-08-22 22:25               ` David Craven
  2016-08-23  0:04                 ` David Craven
  0 siblings, 1 reply; 25+ messages in thread
From: David Craven @ 2016-08-22 22:25 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

>>> The new license bars us from redistributing the code for a fee? If so,
>>> does that count as free software?
>>
>>> But regardless of how you got your copies, you always have the freedom
>>> to copy and change the software, even to sell copies.
>>
>> I guess not then. It has to be removed then?
>
> I could also ask the author of those two files (wcwidth.h, wcwidth.c)
> if he can make them available under the full ISC license...

The FSDG defiler has struck again =P I think this can wait until tomorrow...

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 1/2] gnu: Add libtsm.
  2016-08-22 22:25               ` David Craven
@ 2016-08-23  0:04                 ` David Craven
  2016-08-23  1:09                   ` Leo Famulari
  0 siblings, 1 reply; 25+ messages in thread
From: David Craven @ 2016-08-23  0:04 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

Can I get some feedback on this email? Is it appropriate?

Hi Markus,

I got your email address from https://www.cl.cam.ac.uk/~mgk25/.

I'm a contributor to the guixsd project, a free linux distribution. I
commited a package named libtsm. The package contains two
files (wcwidth.c and wcwidth.h) that you're the author of.

I mistook the license of for being an ISC license which looks similar:

* Permission to use, copy, modify, and distribute this software
* for any purpose and without fee is hereby granted. The author
* disclaims all warranties with regard to this software.

Permission to use, copy, modify, and/or distribute this software
for any purpose with or without fee is hereby granted, provided
that the above copyright notice and this permission notice appear
in all copies.

The difference legally is a big one. According to the FSF's definition
of free software, this makes the files under the current license
non-free.

My question is if this was your intention, and if not, if you could make
the files available under a free license. Otherwise the we can't include
libtsm in our distro. :/

Thank you very much for your consideration.
David

http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c
http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.h
https://cgit.freedesktop.org/~dvdhrm/libtsm/tree/external/wcwidth.c
https://cgit.freedesktop.org/~dvdhrm/libtsm/tree/external/wcwidth.h
https://www.gnu.org/philosophy/free-sw.en.html

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 1/2] gnu: Add libtsm.
  2016-08-23  0:04                 ` David Craven
@ 2016-08-23  1:09                   ` Leo Famulari
  2016-08-24 18:22                     ` Efraim Flashner
  0 siblings, 1 reply; 25+ messages in thread
From: Leo Famulari @ 2016-08-23  1:09 UTC (permalink / raw)
  To: David Craven; +Cc: guix-devel

On Tue, Aug 23, 2016 at 02:04:01AM +0200, David Craven wrote:
> Can I get some feedback on this email? Is it appropriate?

I guess the email looks good. I would rather ask some licensing experts
before taking this to the author, who probably intended to release the
code as free software.

By the way, Debian seems to think the file is also covered under the
BSD-2:
http://metadata.ftp-master.debian.org/changelogs//main/libt/libtsm/libtsm_3-1_copyright

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 2/2] gnu: Add kmscon.
  2016-08-22 13:53 ` [PATCH 2/2] gnu: Add kmscon David Craven
  2016-08-22 18:10   ` Danny Milosavljevic
  2016-08-22 19:34   ` Leo Famulari
@ 2016-08-24 18:16   ` Efraim Flashner
  2016-08-24 18:56     ` David Craven
  2 siblings, 1 reply; 25+ messages in thread
From: Efraim Flashner @ 2016-08-24 18:16 UTC (permalink / raw)
  To: David Craven; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 2827 bytes --]

On Mon, Aug 22, 2016 at 03:53:07PM +0200, David Craven wrote:
> * gnu/packages/admin.scm (kmscon): New variable.
> ---
>  gnu/packages/admin.scm | 33 +++++++++++++++++++++++++++++++++
>  1 file changed, 33 insertions(+)
> 
> diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
> index 5730b5a..a8fcc90 100644
> --- a/gnu/packages/admin.scm
> +++ b/gnu/packages/admin.scm
> @@ -43,6 +43,8 @@
>    #:use-module (gnu packages)
>    #:use-module (gnu packages base)
>    #:use-module (gnu packages cyrus-sasl)
> +  #:use-module (gnu packages freedesktop)
> +  #:use-module (gnu packages gl)
>    #:use-module (gnu packages ncurses)
>    #:use-module (gnu packages readline)
>    #:use-module (gnu packages linux)
> @@ -70,6 +72,7 @@
>    #:use-module (gnu packages libftdi)
>    #:use-module (gnu packages image)
>    #:use-module (gnu packages xorg)
> +  #:use-module (gnu packages xdisorg)
>    #:use-module (gnu packages python)
>    #:use-module (gnu packages man)
>    #:use-module (gnu packages autotools)
> @@ -1792,3 +1795,33 @@ terminal emulators.  It tries to support all common standards while keeping
>  compatibility to existing emulators like xterm, gnome-terminal, konsole, etc.")
>      (home-page "https://www.freedesktop.org/wiki/Software/libtsm")
>      (license license:expat)))
> +
> +(define-public kmscon
> +  (package
> +    (name "kmscon")
> +    (version "8")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append
> +                    "https://freedesktop.org/software/kmscon/releases/"
> +                    "kmscon-" version ".tar.xz"))
> +              (sha256
> +               (base32
> +                "0axfwrp3c8f4gb67ap2sqnkn75idpiw09s35wwn6kgagvhf1rc0a"))))
> +    (build-system gnu-build-system)
> +    (native-inputs
> +     `(("pkg-config" ,pkg-config)))
> +    (inputs
> +     `(("libdrm" ,libdrm)
> +       ("libtsm" ,libtsm)
> +       ("libxkbcommon" ,libxkbcommon)
> +       ("logind" ,elogind)
> +       ("mesa" ,mesa)
> +       ("pango" ,pango)
> +       ("udev" ,eudev)))
> +    (synopsis "Simple terminal emulator")
> +    (description "Kmscon is a simple terminal emulator based on linux kernel
> +mode setting (KMS).  It is an attempt to replace the in-kernel VT implementation
> +with a userspace console.  See kmscon(1) man-page for usage information.")
> +    (home-page "https://www.freedesktop.org/wiki/Software/kmscon")
> +    (license license:expat)))
> -- 
> 2.9.0
> 

we also have terminals.scm that's a little lonely atm with 1 package :)

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 1/2] gnu: Add libtsm.
  2016-08-23  1:09                   ` Leo Famulari
@ 2016-08-24 18:22                     ` Efraim Flashner
  2016-08-24 18:54                       ` David Craven
  2016-08-24 18:57                       ` Leo Famulari
  0 siblings, 2 replies; 25+ messages in thread
From: Efraim Flashner @ 2016-08-24 18:22 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1053 bytes --]

On Mon, Aug 22, 2016 at 09:09:26PM -0400, Leo Famulari wrote:
> On Tue, Aug 23, 2016 at 02:04:01AM +0200, David Craven wrote:
> > Can I get some feedback on this email? Is it appropriate?
> 
> I guess the email looks good. I would rather ask some licensing experts
> before taking this to the author, who probably intended to release the
> code as free software.
> 
> By the way, Debian seems to think the file is also covered under the
> BSD-2:
> http://metadata.ftp-master.debian.org/changelogs//main/libt/libtsm/libtsm_3-1_copyright
> 

Of course "I AM NOT A LAWYER" but if we play parsing games, then "A B C
and D" reads all or none, "A B C and/or D" can be one, some or all, or
none. Either way, to me, the first reads that you have permissions for
all of A..D, and the second as you have permission for each of A..D.

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 1/2] gnu: Add libtsm.
  2016-08-24 18:22                     ` Efraim Flashner
@ 2016-08-24 18:54                       ` David Craven
  2016-08-24 18:57                       ` Leo Famulari
  1 sibling, 0 replies; 25+ messages in thread
From: David Craven @ 2016-08-24 18:54 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

It says:
Permission to A and B this software for any purpose and without fee is
hereby granted.

I read this to mean that we have permission to do A and B as long as
we do it without fee. But I'm not picky so I'll go along with your
interpretation... =P

The question remains which license is this paragraph? Is it ISC or a
custom license? or is it BSD-2 like debian says?

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 2/2] gnu: Add kmscon.
  2016-08-24 18:16   ` Efraim Flashner
@ 2016-08-24 18:56     ` David Craven
  0 siblings, 0 replies; 25+ messages in thread
From: David Craven @ 2016-08-24 18:56 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

Leo already mentioned it, and I've already pushed it... I only
realized the licensing problem (with libtsm and by extension with
kmscon) afterwards... But thanks :)

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 1/2] gnu: Add libtsm.
  2016-08-24 18:22                     ` Efraim Flashner
  2016-08-24 18:54                       ` David Craven
@ 2016-08-24 18:57                       ` Leo Famulari
  2016-08-24 19:11                         ` David Craven
  1 sibling, 1 reply; 25+ messages in thread
From: Leo Famulari @ 2016-08-24 18:57 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 987 bytes --]

On Wed, Aug 24, 2016 at 09:22:43PM +0300, Efraim Flashner wrote:
> On Mon, Aug 22, 2016 at 09:09:26PM -0400, Leo Famulari wrote:
> > On Tue, Aug 23, 2016 at 02:04:01AM +0200, David Craven wrote:
> > > Can I get some feedback on this email? Is it appropriate?
> > 
> > I guess the email looks good. I would rather ask some licensing experts
> > before taking this to the author, who probably intended to release the
> > code as free software.
> > 
> > By the way, Debian seems to think the file is also covered under the
> > BSD-2:
> > http://metadata.ftp-master.debian.org/changelogs//main/libt/libtsm/libtsm_3-1_copyright
> > 
> 
> Of course "I AM NOT A LAWYER" but if we play parsing games, then "A B C
> and D" reads all or none, "A B C and/or D" can be one, some or all, or
> none. Either way, to me, the first reads that you have permissions for
> all of A..D, and the second as you have permission for each of A..D.

I'm lost :) What does this mean for libtsm?

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 1/2] gnu: Add libtsm.
  2016-08-24 18:57                       ` Leo Famulari
@ 2016-08-24 19:11                         ` David Craven
  2016-08-28 13:14                           ` David Craven
  0 siblings, 1 reply; 25+ messages in thread
From: David Craven @ 2016-08-24 19:11 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

> I'm lost :) What does this mean for libtsm?

Can't we just call it an ISC license? I'm sorry I even said something
=P It's the author's responsability to select a license or not add a
license in which case it's clear that it's copyrighted. Stuff like
this is just annoying...

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 1/2] gnu: Add libtsm.
  2016-08-24 19:11                         ` David Craven
@ 2016-08-28 13:14                           ` David Craven
  2016-08-28 15:11                             ` Ludovic Courtès
  0 siblings, 1 reply; 25+ messages in thread
From: David Craven @ 2016-08-28 13:14 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

I updated the license information for the packages. It's an
improvement over what was already commited. I called it a isc derived
license. If someone wants me to take further steps I need clear
instructions on how to proceed. =)

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH 1/2] gnu: Add libtsm.
  2016-08-28 13:14                           ` David Craven
@ 2016-08-28 15:11                             ` Ludovic Courtès
  0 siblings, 0 replies; 25+ messages in thread
From: Ludovic Courtès @ 2016-08-28 15:11 UTC (permalink / raw)
  To: David Craven; +Cc: guix-devel

David Craven <david@craven.ch> skribis:

> I updated the license information for the packages. It's an
> improvement over what was already commited. I called it a isc derived
> license. If someone wants me to take further steps I need clear
> instructions on how to proceed. =)

In cases where a package is multiply-licensed, or if it contains code
under different licenses, we usually list them in the ‘license’ field
with a comment above stating which of these two cases it is.

When a package provides a license that is not found in (guix licenses),
then we use the catch-all ‘x11-style’, ‘non-copyleft’, or ‘fsf-free’
procedures, ideally with the URL of the license text and a comment.

That’s the informal decision chart that I use.  :-)

Ludo’.

^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2016-08-28 15:11 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-22 13:53 [PATCH 1/2] gnu: Add libtsm David Craven
2016-08-22 13:53 ` [PATCH 2/2] gnu: Add kmscon David Craven
2016-08-22 18:10   ` Danny Milosavljevic
2016-08-22 18:14     ` David Craven
2016-08-22 18:17       ` David Craven
2016-08-22 19:34   ` Leo Famulari
2016-08-24 18:16   ` Efraim Flashner
2016-08-24 18:56     ` David Craven
2016-08-22 19:33 ` [PATCH 1/2] gnu: Add libtsm Leo Famulari
2016-08-22 20:54   ` David Craven
2016-08-22 20:57     ` David Craven
2016-08-22 21:08     ` Leo Famulari
2016-08-22 21:46       ` David Craven
2016-08-22 21:52         ` Leo Famulari
2016-08-22 21:58           ` David Craven
2016-08-22 22:10             ` David Craven
2016-08-22 22:25               ` David Craven
2016-08-23  0:04                 ` David Craven
2016-08-23  1:09                   ` Leo Famulari
2016-08-24 18:22                     ` Efraim Flashner
2016-08-24 18:54                       ` David Craven
2016-08-24 18:57                       ` Leo Famulari
2016-08-24 19:11                         ` David Craven
2016-08-28 13:14                           ` David Craven
2016-08-28 15:11                             ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).