Creating a Chocolatey Package For TexLive

Zdenek Wagner zdenek.wagner at gmail.com
Wed Sep 16 17:34:42 CEST 2020


Hi Naveen,

justy a note: the release notes and bug tracker refer to the TeX Live
infrastructure, not to the individual packages. It is the same as with
licenses.

Zdeněk Wagner
http://ttsm.icpf.cas.cz/team/wagner.shtml
http://icebearsoft.euweb.cz

st 16. 9. 2020 v 17:10 odesílatel Norbert Preining
<norbert at preining.info> napsal:
>
> Hi Naveen,
>
> lots of questions, and it is late here in JST ..
>
> > 1. What should be the Package id? And how many packages to create?
> >   Chocolatey states this,
> > > If the software is cross-platform, attempt to use the same id as the debian/rpm package(s) if possible.
> >   So what are the packages I should create/what is the id for it? ID is something people use with chocolatey like below
> > ```cmd
> > choco install <id-here>
> > ```
>
> This is a decision you have to take. Depending on the distribution,
> different packaging approaches can be done:
> - split on TeX Live package level (Fedora, SuSE ?)
> - split on TeX Live collection level (Debian and derivatives)
> - don't split, ship all in one
>
> I don't really understand your packaging efforts, but I think, since you
> use install-tl, that splitting at collection level is the best way.
> But even that doesn't work for you, or does it? I am not sure about how
> multiple packages installing into the same directory are treated in
> choco. (The files are the texlive-infra stuff that is installed in any
> case when calling install-tl).
>
> > 2. What should be the version? If I am right should it be 2020? How often it should change? I plan to include `install-tl.zip` inside the choco pack. So how often should I update it? And also the version?
>
> In Debian I use
>         YYYY.YYYYMMDD
> where the first YYYY is the release number of TeX Live (2018, 2019,
> 2020), and the second in YYYYMMDD is the day I took the tlnet mirror.
>
> SO I can have
>         2020.20210214
> as version number, since it is a TeX Live 2020 release, with tlnet
> checkout on 2021-02-14.
>
> > 3. What can be possibly the title name? I suggest `TexLive (Install)`.
>
> "TeX Live Installer" sounds fine.
>
> > 4. What should be the authors' fields? Possibly `TeX Live Developers` or should I include some names? The maximum allowed here is 1500 characters.
>
> No specific names are needed IMNSHO, just put TeX Live Developers or TeX
> Live Team into it.
>
> > 5. What should be the Icon? Can I make a copy of this icon in my git repo where I maintain this package and hyperlink it?
>
> You can use whatever icon you find. If you need help, I made some square
> and rounded ones.
>
> > 6. What should be the Copyright?
>
> Cannot be stated trivially, since it is an agglomeration of thousands
> of packages.
>
> > 7. What is the License URL? Is this https://www.tug.org/texlive/copying.html?
>
> Yes, that sounds reasonable.
>
> > 8. What is the docs URL for this? Should it be installation Docs?
>
> https://www.tug.org/texlive/doc.html
>
> > 9. Where are the release notes located?
>
> https://www.tug.org/texlive/doc/texlive-en/texlive-en.html#x1-700009
>
> > 10. Where is the bug tracker URL? Is it the mailing list?
>
> The mailing list.
>
> > I plan to call the `install-tl` using `-no-gui` or `-text` mode and pass a profile. If we were to do a single package unlike Debian, I will allow the user to select the type of installation using a package parameter. https://chocolatey.org/docs/helpers-get-package-parameters. What can be defaulted to install? Possibly full?
>
> Yes, I *strongly* suggest to install full TeX Live per default. This is
> also the default we are using in our installer.
>
> > Chocolatey doesn't allow packages to write in the Program Files directory so it will write to Tools Directory located usually in `C:\tools\texlive`. Is that any problem?
>
> Not at all, in fact that is perfect. In general we recommend *NOT* using
> directories with spaces in the full path (like "c:\Program Files" etc),
> so c:\tools\texlive is definitely perfect. Maybe use
>         c:\tools\texlive\YYYY/
> ?
>
> >I will change it using the `TEXDIR` parameter in the profile. Anything else should I change in profile?
>
> Nothing else is necessary. The default is c:\texlive on Windows, so if
> you switch to c:\tools\texlive only the mentioned parameter needs to
> be set.
>
> > About Updating, what should be done before a user updates TexLive? Any directory to remove?
>
> What kind of updates? There are a few options:
> - updates using tlmgr
> - updates using choco
>
> > About Uninstalling TexLive, where is the uninstall script located? (Sorry for repeatedly asking). Is the uninstall script written in the Registry? (If yes, I can get it easily using https://chocolatey.org/docs/helpers-get-uninstall-registry-key and also what should be the name to search? Possibly `texlive*`).
>
> Why don't you ***read*** the answers Siep gave? She pointed at the
> complete and correct location. Please use the archives.
>
> > Usually, all the executables (exe files) will be shimmed see https://chocolatey.org/docs/features-shim should this be disabled?
>
> No idea, please try it out. Our installer already adds the bin directory
> to the PATH of the user or system (depending on install mode), though.
> This is something you have to check.
>
> > Also, should I need to create a shim for `tlmgr` https://chocolatey.org/docs/helpers-install-bin-file because it is a batch script right(This gets the least precedence in command prompt so possibly shimming to an exe file can solve that issue)?
>
> Again, no idea. The .bat file does the magic of updating tlmgr when
>         tlmgr update --self
> is called. Not sure how this will be integrated with choc.
>
> Lots of questions, I tried to answer as much as possible. Good luck!
>
> Norbert
>
> --
> PREINING Norbert                              https://www.preining.info
> Accelia Inc. + IFMGA ProGuide + TU Wien + JAIST + TeX Live + Debian Dev
> GPG: 0x860CDC13   fp: F7D8 A928 26E3 16A1 9FA0 ACF0 6CAC A448 860C DC13



More information about the tex-live mailing list.