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

Re: ITP: golang-github-choueric-cmdmux -- Package cmdmux implements a command parser and router for terminal programme.

The main reason is that this library is written specifically for my another program "kbdashboard"[1] which I want to package into debian too.
So I thought I should add this package first. kbdashboard is a program to help manage building multiple linux kernels which are different versions
or with different configurations, such as toolchains. It is, I think, particular useful in embedded field. I wrote this tool and use it in my daily work.
I do not find any other similar tools (maybe I am wrong) and want people can benefit from it if they need.

By the way, after seeing other existent libraries, I think there is one main differernce from them:

Multi-level sub commands. cli or subcommands can create app behaving like git which has only one subcommand level,
such as "$ git commit [options]". But I hope to implement the something like "$ kbdashboard build image" or "$ kbdashboard install image".
The pattern is like "build/image" and "install/image".

Because there may be many levels for sub-commands, I think a completion file is important. It can help user utilise this program more effectively.

I know there are some shortages:
1. help information. I am trying to implement this feature now.
2. options. I believe this feature is not the main concern and can be handled by the user.
    Implementing it can make the library too complex to use. And I want it simple and focus on the commands.

Sorry for my poor English. I hope my ideas are expressed clearly.

Maybe there is an althernative way: merge this library into kbdashboard so that I only add one program into Debian :).

1. https://github.com/choueric/kbdashboard

2017-02-09 6:39 GMT+08:00 Ben Finney <bignose@debian.org>:
Konstantin Khomoutov <flatworm@users.sourceforge.net> writes:

> On Tue, 7 Feb 2017 13:23:24 +0800
> Haishan Zhou <zhssmail@gmail.com> wrote:
> >  * Package name    : golang-github-choueric-cmdmux
> [...]
> >  * URL             : https://github.com/choueric/cmdmux
> >  * License         : GPL-3.0
> Are you aware of the fact that usage of GPL is questionable *library*
> Go code because a) most of Go programs are statically linked, and b)
> this makes any Go code using a GPL-ed library required to use GPL as
> well?

That is an explicit intention of a copyleft license like the GNU GPL: to
encourage programs to also be licensed under the same copyleft terms.

I don't see why you say it is “questionable” to use the GNU GPL for the
purpose for which it is designed. Please don't cast FUD on copyleft
licenses, they are an important part of free software and therefore of

> So, in the end, you're about to package a library which is currently
> used by no packages external to it, and vasty more feature-complete
> alternatives exist.  Hence do we need it in the archive?

This is a reasonable criticism. Haishan Zhou, is there a specific reason
you want this particular library in Debian when there are apparently
equivalent packages already?

 \                    “He who laughs last, thinks slowest.” —anonymous |
  `\                                                                   |
_o__)                                                                  |
Ben Finney <bignose@debian.org>

Reply to: