New "curl-sh" installation method now available #938
pkgw
announced in
Announcements
Replies: 2 comments 3 replies
-
With tectonic-typesetting/tectonic-typesetting.github.io#40, the main website now highlights the curl-sh installation method: https://tectonic-typesetting.github.io/en-US/install.html |
Beta Was this translation helpful? Give feedback.
0 replies
-
This is awesome!
A little bit nitpicky, but is it possible to automatically download/move the tectonic binary into one of the $PATH directories? In my opinion, with how the script behaves right now, it is just a |
Beta Was this translation helpful? Give feedback.
3 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hi folks,
In an effort to make it easier to install Tectonic I've set up the infrastructure for the "curl-based" form of installation that's become popular lately. On Unix-like platforms (including macOS) you should now be able to install Tectonic just by running:
On Windows, it's a PowerShell two-liner:
In both cases these scripts drop the
tectonic
executable in the current directory.The main documentation hasn't yet been updated since I want to allow a little bit for folks to test things out in case I've made any silly mistakes. So please give it a try!
Implementation
If you're curious, the implementation of this "drop-in installer" functionality goes as follows. The number of moving parts might surprise you!
The actual installation scripts are hosted through the Tectonic organization's GitHub pages repo, and were added in tectonic-typesetting/tectonic-typesetting.github.io#38. The tricky bit is that the installer scripts need to know the version of the latest Tectonic release, and we really want that information to be updated automatically whenever a release is made. The CI system in the main Tectonic repo already has automation to update the website for releases, and I figured out how to use Jekyll's templating functionality to auto-update those scripts as part of the general website update.
But the URLs of those scripts aren't the prettiest. So I also wanted to create some relatively friendly domain names that could be used to access the installers. The
fullyjustified.net
infrastructure, which runs on Azure, is defined through Terraform files in the tectonic-cloud-infra repo, and in tectonic-typesetting/tectonic-cloud-infra#1 I added the definitions of the new domain names and routed them to a simple nginx-based web app that handles basic redirections for various pieces of the Tectonic web infrastructure. (That pull request also contains a bunch of other general updates.) The trickiest part with this is setting up proper HTTPS support, which is always a bit tedious.Finally, in tectonic-typesetting/tectonic-relay-service#4 I added a little new logic to that web app to handle the new subdomains as vhosts and redirect as desired. I already had the nginx server set up with some vhost support, so this was pretty straightforward. The CI for this repo builds and updates the tectonictypesetting/relay-service Docker image when the main branch is updated, and the Azure web app is set up to automatically reload whenever that image is updated. So all I needed to do to get the new redirects running was to merge to
master
and wait a few minutes for the deployment to run.Beta Was this translation helpful? Give feedback.
All reactions