public inbox for cygwin-apps@cygwin.com
 help / color / mirror / Atom feed
From: green fox <mail.green.fox@gmail.com>
To: cygwin-apps@cygwin.com
Subject: Re: [PATCH] setup.exe
Date: Mon, 21 Jan 2013 09:17:00 -0000	[thread overview]
Message-ID: <CAK8_2ZWPCX5RSwBK7aR6i9-azux8GXeFe3230M9aSqh=+bqKCA@mail.gmail.com> (raw)
In-Reply-To: <878v7onx33.fsf@Rainer.invalid>

On 1/20/13, Achim Gratz wrote:
> I plan to publish my infrastructure, but haven't yet since it a) isn't
> feature complete and b) I need to clean up a few things.  I don't want
> to fork setup.exe if I can help it.

Agrred. No one likes to fork, and that includes myself.
And believe me, clean up of code will never happen. We've got a
rollout script that noone dare touches it to clean it up. And it
grows, too.

The lack for any good (standard) bootstrap method for mass deployment
is a problem.
And everybody result in writing one'sown in-house version.

> Let me briefly describe how it works: I currently use lftp to mirror
> Cygwin and Cygport locally (in a pinch you could use setup.exe itself to
> do this).  I have locally built packages and (sometimes) the Cygwin
> snapshots re-packaged into Cygwin packages as additional package
> sources.  I then use a Perl script to combine all package sources, pull
> in dependencies of the selected packages and write this out to a new
> setup.ini and install hierarchy (optionally with removing unreferenced
> files from earlier versions).  I'm injecting additional groups into the
> new setup.ini so that I can do different installs from the same
> setup.ini easily (I currently have CLI, GUI, Devel, CygDev - but you can
> define whatever you want).  This is what then gets distributed to the

Diffrent vehicle(rsync), but same here.
Diffrence is, we gave up on the setup.ini route in the past, but if
the setup.ini thing works nicely, this is cleaner approach than what
we've got.
Having to build and deploy custom packages, wrote a quick and dirty
script that makes a self extracting archive blob. Then it pushes
out/exec on remote. Very dirty, but we had a existing base for pushing
out binary blobs/remove executon anyway.

> This is working and it doesn't require any changes to setup.exe.
Very cool :-)

> As I said, I have additional requirements to provide different releases,
> which for the sake of discussion can be simplified to being able to take
> a setup.ini and "freeze" it along with all the package files it
> references and then be able to install it again in exactly that state at
> a later time.

Actually this is the most important thing lacking from the curernt situation.

We have a mirror that holds packages of (current and past )specific
versions, and
the freeze/save state is performed by the (avobe mentioned) blob maker
(that can re-create the same blob , as long as supplied with same list
).
But this is not the best way to do things. It's jsut a workaroud,
that's been used for years.

> I guess anyone trying to get Cygwin into a corporate network is in the
> same boat.
>

really need a solid package manager for cygwin.

> start setup.exe two times in a row) and the ability to delete packages
> from the command line.  The functionality to do this already is in
> setup.exe, there are just no controls for this on the command line.

+1 on providing a solid option
As a minimum having install|remove|update|show|find|depends would be needed.

And if possible
-mirror <url> : set mirror to download package( can specify multiple)
-cache <dir>  : set cache directory to use
     (for packages that may aready been downloaded/partial download in progress)
    Something like combination of the exsiting [--local-install]
[--local-package-dir]
-file, -f <file>  : read package list to install/remove from file
([-P] from a file)
-force            : Force install/remove

> Maybe an option to suppress the GUI completely would be nice, but I
> personally like to have the progress status on screen.
>
I believe there is [--quiet-mode]

>> My 2cents worth of thought tells me, providing setup.exe as front
>> end/stub/gui to call a solid back end package manager is a reasonable
>> way to go.
>
> That would be a different setup.exe than we have today.  If Cygwin wants
> to go that route, a more capable package backend would be nice, libzypp
> anyone?
>

It was just a dream.
But really, having only curr|prev|test for version control is not funny.

  reply	other threads:[~2013-01-21  9:17 UTC|newest]

Thread overview: 58+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-18 17:24 Achim Gratz
2013-01-18 18:28 ` Ken Brown
2013-01-18 21:09 ` Christopher Faylor
2013-01-19  7:41   ` Achim Gratz
2013-01-19 17:18     ` Christopher Faylor
2013-01-19 20:47       ` Achim Gratz
2013-01-19 21:20         ` Christopher Faylor
2013-01-20  3:35           ` green fox
2013-01-20  6:53             ` Christopher Faylor
2013-01-21  7:03               ` green fox
2013-01-21  7:32                 ` Christopher Faylor
2013-01-21  9:46                   ` green fox
2013-01-21 16:01                     ` Christopher Faylor
2013-01-21 19:32                       ` green fox
2013-01-21 20:16                         ` Christopher Faylor
2013-01-20  7:16             ` Achim Gratz
2013-01-21  9:17               ` green fox [this message]
2013-01-20  7:23           ` Achim Gratz
2013-01-21 17:58             ` Achim Gratz
2013-01-25 22:07 ` [PATCH 0/4] setup.exe Achim Gratz
2013-01-25 22:10   ` [PATCH 1/4] setup.exe Achim Gratz
2013-02-01 14:40     ` Jon TURNEY
2013-02-01 15:11       ` marco atzeri
2013-02-01 17:10         ` Christopher Faylor
2013-02-01 16:08       ` Achim Gratz
2013-02-08 17:09     ` Jon TURNEY
2013-02-08 21:30       ` Achim Gratz
2013-02-10 19:23         ` Christopher Faylor
2013-02-11 19:40           ` Achim Gratz
2013-02-12 20:02           ` [PATCH 0/3] setup: implement CLI options Achim Gratz
2013-02-12 20:06             ` [PATCH 1/3] " Achim Gratz
2013-02-12 20:06             ` [PATCH 2/3] " Achim Gratz
2013-02-12 20:06             ` [PATCH 3/3] " Achim Gratz
2013-02-13 19:10           ` [PATCH 1/4] setup.exe Achim Gratz
2013-02-13 19:30             ` Christopher Faylor
2013-02-13 21:25               ` Achim Gratz
2013-02-13 22:08                 ` Christopher Faylor
2013-02-14 20:31                   ` Achim Gratz
2013-02-15  0:22                     ` Christopher Faylor
2013-02-15 19:52                       ` Achim Gratz
2013-02-16 18:39                         ` Christopher Faylor
2013-02-16 20:11                           ` Achim Gratz
2013-02-16 21:16                             ` Corinna Vinschen
2013-02-17 17:20                               ` Christopher Faylor
2013-02-17 17:43                                 ` Corinna Vinschen
2013-02-17 18:02                                   ` Christopher Faylor
2013-02-17 18:44                                     ` Achim Gratz
2013-02-17 19:21                                       ` Corinna Vinschen
2013-02-17 21:47                                         ` Christopher Faylor
2013-02-17 22:22                                           ` Christopher Faylor
2013-02-18 19:01                                             ` Achim Gratz
2013-01-25 22:11   ` [PATCH 0/4] setup.exe Achim Gratz
2013-02-01 15:05     ` Jon TURNEY
2013-02-01 16:48       ` Achim Gratz
2013-02-01 19:28       ` [PATCH 5/4] setup.exe Achim Gratz
2013-01-25 22:11   ` [PATCH 2/4] setup.exe Achim Gratz
2013-01-25 22:12   ` [PATCH 4/4] setup.exe Achim Gratz
2013-02-04 16:21   ` [PATCH 3/4] setup.exe Achim Gratz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAK8_2ZWPCX5RSwBK7aR6i9-azux8GXeFe3230M9aSqh=+bqKCA@mail.gmail.com' \
    --to=mail.green.fox@gmail.com \
    --cc=cygwin-apps@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).