1
1
mirror of https://github.com/wez/wezterm.git synced 2024-12-25 06:12:16 +03:00
Commit Graph

408 Commits

Author SHA1 Message Date
Wez Furlong
d19a61ae9c ci: more fun with apt 2021-12-06 10:50:52 -07:00
Wez Furlong
6a310c4bd4 ci: ensure APT can use https sources 2021-12-06 10:40:51 -07:00
Wez Furlong
0882d2f546 ci: switch ubuntu20 back to a container
Something weird going on with the rust stuff
2021-12-06 10:37:54 -07:00
Wez Furlong
c033160500 ci: try to debug the debian issue 2021-12-06 10:21:06 -07:00
Wez Furlong
e1260b2337 ci: another stab at quoting for this GH key stuff
Objectively awful, but avoids a python dep on yaml
2021-12-06 10:12:25 -07:00
Wez Furlong
aa200ae8aa ci: try alternate quoting for the GH key install 2021-12-06 10:05:29 -07:00
Wez Furlong
03f5a23939 ci: powertools enable only on centos 2021-12-06 09:59:21 -07:00
Wez Furlong
7df420dce0 ci: dnf requires -y in automation 2021-12-06 09:55:59 -07:00
Wez Furlong
4d5af41f91 ci: fix missing python f"" for "{sudo}" 2021-12-06 09:54:17 -07:00
Wez Furlong
c942dbe02d ci: need curl installed before we can do the GH cli install on debian 2021-12-06 09:52:19 -07:00
Wez Furlong
faec667ff9 ci: install config manager on fedora 2021-12-06 09:49:28 -07:00
Wez Furlong
be1b54ba33 ci: try installing GH inside containers
`gh` is pre-installed in native runners only; when we build in a
container, we need to install it for ourselves.

This commit drops support for building on centos7 as it is a PITA
to get this working there.
2021-12-06 09:45:14 -07:00
Wez Furlong
1e8ebdadfd ci: switch to GH CLI for uploading to releases
I lost a few hours over the weekend because the GH release uploads
are flakey and the action I was using doesn't internally perform
retries.  I had to manually delete the failed uploads from the release
and then re-trigger the builds across several platforms, several times
for both of the releases I pushed this weekend :-/

This commit speculatively switches over to using the GH cli in the
hopes that the error reporting is better, and also because it is
simpler to externally drive a retry loop.

Let's see how this goes.
2021-12-06 09:14:15 -07:00
Wez Furlong
672c1cc135 ci: arch pkgbuild should conflict as well as provide wezterm 2021-12-05 19:26:49 -07:00
Wez Furlong
bde2c728bf ci: use consistent git core.abbrev setting for TAGNAME
refs: https://github.com/wez/wezterm/issues/1365
2021-12-05 19:21:06 -07:00
Wez Furlong
30fd56c35f ci: actions/cache -> 2.1.7 2021-11-28 19:10:08 -07:00
Wez Furlong
f0f7110dfe ci: windows -> windows-latest
GH are deprecating the version we were using, so let's see if simply
upgrading to latest works out.
2021-11-23 06:57:48 -07:00
Wez Furlong
f0f881af9d ci: use correct name for secret 2021-11-22 20:25:14 -07:00
Wez Furlong
6aff2604d7 ci: base encode the pw 2021-11-22 20:07:51 -07:00
Wez Furlong
6b04480318 ci: debugging 2021-11-22 18:31:16 -07:00
Wez Furlong
d3585edf37 ci: add more logging around codesigning 2021-11-22 17:10:42 -07:00
Wez Furlong
f655f75f2b ci: take another pass at codesigning 2021-11-22 15:27:55 -07:00
Wez Furlong
5be0196b69 ci: smart quotes/dashes are horrible 2021-11-22 14:09:08 -07:00
Wez Furlong
4ceaf980a9 ci: fix missing -
3rd time's the charm?
2021-11-22 13:01:03 -07:00
Wez Furlong
98e107f307 gah, missed a bit 2021-11-22 12:16:55 -07:00
Wez Furlong
06e35bbd52 ci: maybe enable codesigning on macos
refs: https://github.com/wez/wezterm/issues/482
2021-11-22 11:27:14 -07:00
Manpreet Singh
e7b8c7e8b8
Fedora 35 builds (#1323)
* Fedora 35

* Update docs/install/linux.markdown

Co-authored-by: Wez Furlong <wez@wezfurlong.org>
2021-11-15 17:33:38 -08:00
Chip Senkbeil
7d5c301c66 Ensure /run/sshd exists, explicitly set username in sshd fixture, add back use_privilege_mode no 2021-10-10 14:54:45 -07:00
Chip Senkbeil
68fd2035cd Rebase and re-apply openssh-server addition to CIs 2021-10-10 14:54:45 -07:00
Frieder Bluemle
b56f67579d ci: Simplify and clean up generate-workflows.py 2021-10-02 10:11:54 -07:00
Wez Furlong
9be8f92d7c ci: simplify debian deps bits 2021-09-25 22:19:01 -07:00
Wez Furlong
cb729be1a7 ci: dynamically compute debian deps 2021-09-25 19:49:10 -07:00
Wez Furlong
3a598342b8 ci: fixup dep for debian11 2021-09-25 18:51:40 -07:00
Wez Furlong
bdc63c0dc2 ci: optional sudo for deb install in deb builder 2021-09-25 18:34:01 -07:00
Wez Furlong
48c0044673 ci: attempt to install the .deb after we build
This is an attempt to verify that we got the right dep names

refs: #1052
2021-09-25 18:02:25 -07:00
Wez Furlong
7efb6e8df9 ci: remove fedora 31 and 32, which are EOL 2021-09-25 17:56:49 -07:00
Wez Furlong
83d159ae21 ci: add more debian deps
https://github.com/wez/wezterm/issues/1052#issuecomment-927197992
suggests that we're missing these library deps from our .debs,
so let's try adding them
2021-09-25 17:24:07 -07:00
Wez Furlong
0ebccbfab2 ci: docs: maybe fix nightly appimage link
This is a consequence of 9ac08f3ed0
and e76e79c104

refs: https://github.com/wez/wezterm/issues/1168
2021-09-24 19:25:39 -07:00
Wez Furlong
9ac08f3ed0 ci: ubuntu16 is no longer available on GH actions
Switch the AppImage builder over to ubuntu18.  According to
https://docs.appimage.org/packaging-guide/overview.html#converting-existing-binary-packages
the AppImage target is the oldest current Ubuntu LTS version, so this
should be ok, although those docs still reference Ubuntu 16.

refs: https://github.com/actions/virtual-environments/issues/3287
2021-09-22 20:47:08 -07:00
Frieder Bluemle
89e4d7b787 ci: Do not run upload action on forks 2021-09-21 09:43:09 -07:00
Wez Furlong
e36cf75451 ci: factor out ci/check-rust-version.sh
refs: #1079
2021-09-16 08:54:05 -07:00
Wez Furlong
82cf33e0ab .debs now provide x-terminal-emulator
refs: #1139
2021-09-13 08:36:58 -07:00
karl
9a112e82ac ci: Forgot adding Debain 11 to the docs link builder 2021-08-21 07:08:16 -07:00
karl
d555be2051 ci: Added Debain 11 target 2021-08-20 14:01:34 -07:00
Wez Furlong
40c8fb1f0f ci: prep devtoolset 9 with SCL repo 2021-08-19 21:31:46 -07:00
Wez Furlong
f845df811b ci: rejigger ci a bit 2021-08-19 21:22:36 -07:00
Wez Furlong
2446ac5d7f ci: use newer compiler on centos7
Needed to support the IME work in #1043
2021-08-19 20:52:35 -07:00
Wez Furlong
4eb17dd9f4 CI: use macos-11 instead of macos-11.0
Github made a breaking change with the name today when they
rolled out GA for this environment.
2021-08-17 21:06:12 -07:00
Wez Furlong
66f97b0db0 ignore template edits in CI 2021-08-17 17:43:19 -07:00
Wez Furlong
d54bf21826 update actions/cache -> 2.1.6 2021-05-30 23:07:29 -07:00
Wez Furlong
7a33956b8e ci: no need to cat wezterm.rb
I added this originally to see if the templating was working correctly.
With the recent changes to make it a cask, it's now much longer and
obscures some of the other more valuable output, so remove it.
2021-05-23 14:44:07 -07:00
Wez Furlong
8418495dbd brew tap is now a Cask on macOS
This updates the docs to reflect the changes in
https://github.com/wez/homebrew-wezterm/pull/2 and updates the
automation to use the cask as the template, and to update and commit the
task version of the formula.

Thanks @laggardkernel!

closes: https://github.com/wez/homebrew-wezterm/issues/1
refs: https://github.com/wez/wezterm/issues/501
2021-05-22 08:30:10 -07:00
Wez Furlong
3f7122cb3f ci: wezterm-bin no longer exists 2021-05-02 15:42:44 -07:00
Wez Furlong
e210cdf8ea docs: add fedora 34 2021-05-02 09:52:57 -07:00
Wez Furlong
46c759a08f ci: add fedora 34 2021-05-02 09:29:40 -07:00
Wez Furlong
35eb7383b1 ci: simplify version number
Previously, we used `git describe --tags` to produce a version number
for non-released builds derived from the most recent tag + some info
such as the number of commits since that tag and then `g{HASH}`.

That always confuses people because the date portion at the front
looks old (it is typically the previous release) and the hash at
the end has that `g` in it.

This commit simplifies both the tag name used when making a release
and the computed version number take the date/time from the current
commit, and then append the hash.  That way the version number always
corresponds to a commit.

This scheme doesn't help detect situations where the commit is
dirty, but I don't think the old one would have helped with that
either.
2021-04-29 20:23:47 -07:00
Wez Furlong
8ce376753f round out quick select mode
* Make alphabet and patterns configurable
* add docs
* Enhance scrollback search to support regex captures so that
  searching for eg: `fo(o)` will select the last `o` in `foo`.

refs: https://github.com/wez/wezterm/issues/732
2021-04-25 16:27:39 -07:00
Wez Furlong
e3fcdc9f36 add format-window-title event
This provides a flexible way for users to customize what gets
shown in the window title bar.

closes: https://github.com/wez/wezterm/pull/603
2021-04-24 16:47:26 -07:00
Wez Furlong
e9372086ae ci: update actions/cache 2021-04-19 09:24:48 -07:00
Wez Furlong
87350bde4d docs: explicitly fetch nightly info
We have more releases than fit in a page, so the nightly release
isn't included in the json we request.

Explicitly fetch it!
2021-04-05 12:29:13 -07:00
Nicolas
217dbfb99d Fix Mulitplexing typo in sidebar 2021-03-31 18:09:16 -07:00
Wez Furlong
1af47804d2 ci: fixup cirrus exclusion 2021-03-28 20:39:49 -07:00
Wez Furlong
e7e90c7390 ci: pass PATH into get-deps
I think this will help find rustc for platforms that use sudo
2021-03-28 20:33:32 -07:00
Wez Furlong
57f1aa2785 fixup build to not consider termwiz tags as wezterm tags
CI got broken by the termwiz release.  This commit teaches the
various `git describe --tags` calls to filter to the wezterm
tags which all start with the year.  We're match `20*` which should
be good for the next 79 years.

I've removed the vergen dependency as there was no way to teach it
to do the equivalent matching, and it wasn't a terrible burden
to just inline the git describe call anyway.
2021-03-17 21:02:03 -07:00
Wez Furlong
684b7ea95d Windows: fix "Open WezTerm Here" for C:\
closes: https://github.com/wez/wezterm/issues/451
closes: https://github.com/wez/wezterm/issues/526
2021-03-10 20:12:47 -08:00
Wez Furlong
229df874b7 docs: break out events into their own pages
Take the existing open-uri docs and move to their own page.
Add docs for the new window events.
2021-03-09 21:50:48 -08:00
Wez Furlong
ec12eed180 docs: migrate misc.md to individual config pages 2021-03-07 00:10:28 -08:00
Wez Furlong
62917c63b6 docs: add installation info for FreeBSD 2021-03-03 08:45:58 -08:00
Wez Furlong
35060fb2de Revert "ci: disable mdbook-linkcheck"
This reverts commit bef0fa29ac and
bb2d45d0aa.

refs: https://github.com/Michael-F-Bryan/mdbook-linkcheck/issues/53
2021-02-24 09:28:00 -08:00
Wez Furlong
bb2d45d0aa ci: html subdir disappears from mdbook build when disabling linkcheck
refs: https://github.com/Michael-F-Bryan/mdbook-linkcheck/issues/53
2021-02-23 08:14:41 -08:00
Wez Furlong
951d15f2a1 ci: avoid building binaries just for doc changes 2021-02-20 10:57:37 -08:00
Wez Furlong
58fde836c3 docs: document various missing things
refs: https://github.com/wez/wezterm/issues/63
refs: https://github.com/wez/wezterm/issues/461
2021-02-20 10:40:26 -08:00
Wez Furlong
6c1c5f8714 docs: move mouse binding to its own page 2021-02-20 08:38:46 -08:00
Wez Furlong
3f91e30719 toast: windows: setup own AppUserModelID for our notifications
This is so that our notifications show as coming from wezterm
rather than powershell.
2021-02-17 23:45:52 -08:00
Wez Furlong
bc40c913ae ci: update homebrew template for macOS .app layout change 2021-02-16 09:50:39 -08:00
Wez Furlong
ff821c3b63 macos: moves things around in the .app
This should make things easier to codesign in the future,
although I can't really verify that right now, and I have
no immediate plans to do so.
2021-02-15 18:08:09 -08:00
Wez Furlong
9bf419ebae windows: include ANGLE EGL in the zip download 2021-02-09 08:34:58 -08:00
Wez Furlong
d28dca4b0a ci: update to actions/cache@v2.1.4 2021-02-07 22:49:52 -08:00
Wez Furlong
79656f2bf3 ci: avoid triggering GH actions when editing cirrus config 2021-02-07 10:11:44 -08:00
Wez Furlong
ef41952cb5 ci: ignore/include docs for code/pages workflows 2021-02-07 09:59:10 -08:00
Wez Furlong
89438c2947 more updates for master -> main 2021-02-03 21:51:01 -08:00
Wez Furlong
8ee11484b9 update for rename of master branch -> main 2021-02-03 21:34:12 -08:00
Wez Furlong
5c41afacce docs: remove lua syntax highlighting hack
The updated mdbook bits already include this, and our hack resulted
in disabling lua highlighting.
2021-02-01 08:12:21 -08:00
Wez Furlong
90fc2b45ca docs: allow making docs on my mac (identify executable not installed) 2021-01-31 17:15:35 -08:00
Wez Furlong
9a610358d1 docs: upgrade to mdbook 0.4, enable link checking
Standardize on `thing.md` rather than `thing.markdown` to make it
easier to cross link.
2021-01-30 14:14:29 -08:00
Wez Furlong
eb8923f3c5 ci: adjust continuous/nightly schedule
This commit reduces the cron schedule for nightly builds down from
hourly and to actually nightly (at ~3am).

The push-to-master flow now triggers effectively the same thing at push
time, so if anything, this will reduce the latency of the continuous
package build and deploy.

The push-to-master flow will now skip builds if it changes only the
docs.
2021-01-30 12:34:54 -08:00
Wez Furlong
fc6f529ee5 docs: start adding a reference section for Config 2021-01-18 17:31:39 -08:00
Wez Furlong
b60e83b22b docs: start documenting supporting escape sequences
I started this a while ago; it's pretty time consuming to produce
accessible and usable documentation for this sort of stuff, so
this isn't yet complete, but in the interest of avoiding additional
bit-rot, let's get this up.

refs: https://github.com/wez/wezterm/issues/257
2021-01-18 11:16:18 -08:00
Wez Furlong
42b95cd413 ci: generate universal binaries for macOS
This persuades the CI to install both the arm and intel flavors
of the rust toolchain on macOS, and the deploy script to generate
a universal binary.

* need big sur to build for M1
* Use cross-compilation compatible mlua from my fork for now
2021-01-13 20:11:58 -08:00
Wez Furlong
3d9f341e00 docs: tweak mdbook config
* Sets wezterm's icon as the favicon
* enable github link back to the repo
* Default to Ayu color scheme
2020-12-26 10:05:39 -08:00
Wez Furlong
bda7633fa9 ci: include whole debian pkg root in the .xz ubuntu archive
I'd forgotten that the .xz tarball was a thing.  Update it to include
everything that goes into the .deb

refs: https://github.com/wez/wezterm/issues/385
2020-12-20 11:17:40 -08:00
Wez Furlong
c6a55cd3b2 packaging: omit metalangle from macos for now
It does feel a bit more sluggish on my intel mac recently, so let
leave it out.
2020-12-17 20:18:02 -08:00
Wez Furlong
8f5b5b572e ci: ubuntu 19 is EOL 2020-12-10 19:53:34 -08:00
Wez Furlong
02240891d3 ci: skip apt update for ubuntu 19.10
It's been failing for the past day
2020-12-10 19:44:49 -08:00
Wez Furlong
dd11fc606a ci: maybe fix centos 8
The internet suggests that the name should be lowercase.
Why this suddenly broke is beyond me.
2020-12-07 21:34:30 -08:00
Wez Furlong
215a3bb297 docs: link to fedora 33 nightly builds 2020-12-04 22:09:48 -08:00
Wez Furlong
ab54d1f897 Updates for building on Fedora 33 2020-11-29 10:26:11 -08:00
Wez Furlong
9d2df980e7 More fun with actions-rs/toolchain
I don't think that https://github.com/actions-rs/toolchain/issues/124
is 100% fixed, but this should fix our CI in the meantime.
2020-11-17 12:03:24 -08:00
Wez Furlong
8b9f6aed65
speculative fix for CI (#333)
* speculative fix for CI

GitHub made a breaking change, and this may get us through
until this action is updated.

refs: https://github.com/actions-rs/toolchain/pull/114
refs: https://github.com/actions-rs/toolchain/issues/124
2020-11-16 17:28:37 -08:00
Wez Furlong
25bbac4171 wezterm: fixup centos packaging 2020-11-14 09:24:21 -08:00
Wez Furlong
eb22808761 wezterm: add shell integration for bash and zsh
This commit provides a shell script that hooks into bash and zsh
to enable OSC 7 and semantic zones.

The packaging for Fedora and Debian deploys that script to
/etc/profile.d.
2020-11-14 09:07:56 -08:00
Jeremy Fitzhardinge
cb6b1496bf Don't hard-code architecture in debian package 2020-11-11 20:31:18 -08:00
Wez Furlong
a725dd3050 ci: add mux-server to brew tap install 2020-10-30 22:20:02 -07:00
Wez Furlong
0547fbb549 ci: set release as pre-release when tagging
also looks like I missed updating the source tarball
generation step in a prior adjustment.
2020-10-30 22:09:58 -07:00
Wez Furlong
89257c73bb wezterm: a few more wezterm-gui fixups
These parts of packaging are likely sensitive to the change also
2020-10-24 17:17:45 -07:00
Wez Furlong
2ec12b5426 wezterm: fixup packaging for wezterm-gui split
refs: #301
2020-10-24 16:54:36 -07:00
Wez Furlong
7e8c5a06bb split gui into wezterm-gui executable
This commit moves a bunch of stuff around such that `wezterm` is now a
lighter-weight executable that knows how to spawn the gui, talk to
the mux or emit some escape sequences for imgcat.

The gui portion has been moved into `wezterm-gui`, a separate executable
that doesn't know about the CLI or imgcat functionality.

Importantly, `wezterm.exe` is no longer a window subsystem executable
on windows, which makes interactions such as `wezterm -h` feel more
natural when spawned from `cmd`, and should allow
`type foo.png | wezterm imgcat` to work as expected.

That said, I've only tested this on linux so far, and there's a good
chance that something mac or windows specific is broken by this
change and will need fixing up.

refs: #301
2020-10-24 16:40:15 -07:00
Wez Furlong
9e53462348 docs: adjust screenshots to include cursor color
Make sure the window is active when capturing all the screenshots.
2020-10-20 09:55:32 -07:00
Wez Furlong
83c52ef27a docs: format and wording tweak for color schemes 2020-10-20 00:55:35 -07:00
Wez Furlong
2c5275142a docs: another tweak for color schemes linkage 2020-10-20 00:52:42 -07:00
Wez Furlong
df1206fc37 docs: fixup case of title 2020-10-20 00:46:12 -07:00
Wez Furlong
30fc374ad8 docs: add colorschemes + screenshots
This includes a script to generate a screenshot from a wezterm
running the default config under X11.

It expects the iTerm2-Color-Schemes to be checked out alongside
the wezterm repo as it uses the dynamic color schemes scripts
to activate the schemes one by one and capture the display.
2020-10-20 00:40:25 -07:00
Wez Furlong
b7e303f39c Windows: prefer to use Direct3D11 via ANGLE
This is similar in spirit to the work in 4d71a7913a
but for Windows.

This commit adds ANGLE binaries built from
07ea804e62
to the repo.  The build and packaging will copy those into the same
directory as wezterm.exe so that they can be resolved at runtime.

By default, `prefer_egl = true`, which will cause the window
crate to first try to load an EGL implementation.  If that fails,
or if `prefer_egl = false`, then the window crate will perform
the usual WGL initialization.

The practical effect of this change is that Direct3D11 is used for the
underlying render, which avoids problematic OpenGL drivers and means
that the process can survive graphics drivers being updated.

It may also increase the chances that the GPU will really be used
in an RDP session rather than the pessimised use of the software
renderer.

The one downside that I've noticed is that the resize behavior feels a
little janky in comparison to WGL (frames can render with mismatched
surface/window sizes which makes the window contents feel like they're
zooming/rippling slightly as the window is live resized). I think this
is specific to the ANGLE D3D implementation as EGL on other platforms
feels more solid.

I'm a little on the fence about making this the default; I think
it makes sense to prefer something that won't quit unexpectedly
while a software update is in progress, so that's a strong plus
in favor of EGL as the default, but I'm not sure how much the
resize wobble is going to set people off.

If you prefer WGL and are fine with the risk of a drive update
killing wezterm, then you can set this in your config:

```lua
return {
  prefer_egl = false,
}
```

refs: https://github.com/wez/wezterm/issues/265
closes: https://github.com/wez/wezterm/issues/156
2020-10-17 19:08:16 -07:00
Wez Furlong
d33647dd97 ci: move source archive to run only for appimage build
The nightly builds seem to often trip over each other when
uploading the source tarball from ubuntu20.

Restrict it to being built only on the appimage build (ubuntu16).
2020-10-10 17:14:06 -07:00
Wez Furlong
46651caaf8 ci: disable cache on macos 2020-10-10 12:00:18 -07:00
Wez Furlong
6c12e2e981 docs: more pane related docs 2020-10-10 10:49:36 -07:00
Wez Furlong
bfe87b6bec ci: more messing around with cache on macos
Something seems to poison the cargo cache between the PR
and continuous builds.  Turn off caches for continuous builds.
2020-10-10 09:25:11 -07:00
Wez Furlong
ba9b98cd28 docs: fixup generated index page links 2020-10-10 09:07:56 -07:00
Wez Furlong
809bb53387 docs: split out the KeyAssignment enum variants
This makes the individual functions a bit easier to discover,
and a lot easier to link to.
2020-10-10 08:45:13 -07:00
Wez Furlong
7af4152275 docs: add a bit of exposition for the module/object sections 2020-10-10 08:00:08 -07:00
Wez Furlong
2463510a88 ci: more adjustments for actions/cache@v2 2020-10-10 07:36:34 -07:00
Wez Furlong
4c639c1d54 ci: invalid github caches
The mac builds started to fail with a crate resolution issue that I
can't reproduce locally shortly after I updated the cache action.  Let's
tweak the cache key to see if that clears things up.
2020-10-09 23:53:58 -07:00
Wez Furlong
b009e8c0d4 docs: add docs for the window object
refs: #225
2020-10-09 23:34:35 -07:00
Wez Furlong
850fdf40de docs: add docs for the Pane object
refs: #225
2020-10-09 23:22:52 -07:00
Wez Furlong
6e0836d11a docs: Make it easier to split out docs into multiple pages 2020-10-09 22:03:59 -07:00
Wez Furlong
22b6123624 ci: update to actions/cache@v2 2020-10-09 21:02:00 -07:00
Wez Furlong
8ce2d2ba04 ci: remove deprecated and unused azure setenv 2020-10-09 21:01:17 -07:00
Wez Furlong
ecdc321ab8 ci: update PKGBUILD.template for license file addition
refs: #290
2020-10-06 13:24:35 -07:00
Wez Furlong
d40e502fab adjust packaging to include wezterm-mux-server 2020-10-03 11:15:57 -07:00
Wez Furlong
e6a858664f windows: Software frontend is now mesa llvmpipe
This is a bit of a switch-up, see this comment for more background:
refs: https://github.com/wez/wezterm/issues/265#issuecomment-701882933

This commit:

* Adds a pre-compiled mesa3d opengl32.dll replacement
* The mesa dll is deployed to `<appdir>/mesa/opengl32.dll` which by
  default is ignored.
* When the frontend is set to `Software` then the `mesa` directory
  is added to the dll search path, causing the llvmpipe renderer
  to be enabled.
* The old software renderer implementation is available using the
  `OldSoftware` frontend name

I'm not a huge fan of the subdirectory for the opengl32.dll, but
I couldn't get it to work under a different dll name; the code
thought that everything was initialized, but the window just rendered
a white rectangle.
2020-10-01 18:31:57 -07:00
Wez Furlong
b10a33684e wezterm: fixup rpm build 2020-09-10 22:01:47 -07:00
Wez Furlong
94fb5094a4 wezterm: compile in default color schemes
Rather than scanning directories and reading in ~230 files on startup,
do the scan at build time so that we're parsing from memory rather
than local storage.

This should shave a bit of time off the startup, although I
haven't measured this, and I've only run this on a remote
linux system thus far.

refs: https://github.com/wez/wezterm/issues/264
2020-09-10 21:46:45 -07:00
Wez Furlong
38d18ac6db fix colorscheme install in the release AUR
refs: https://github.com/wez/wezterm/issues/259
2020-09-08 21:07:35 -07:00
Wez Furlong
573f2435c8 Automate updating linuxbrew tap
refs: https://github.com/wez/wezterm/issues/239
2020-07-05 09:40:52 -07:00
Wez Furlong
28eda7663e ci: take another pass at updating apt 2020-06-19 21:46:33 -07:00
Wez Furlong
99e736605e ci: run apt update on all apt based systems
GitHub actions ubuntu runs have been broken for the last day and
a half, so insert this to see if it will help.
2020-06-19 21:28:05 -07:00
Wez Furlong
3fb3a61a99 ci: fix sed usage when updating homebrew 2020-06-08 11:09:16 -07:00
Wez Furlong
d979a63e1a ci: hopefully last tweak for pushing macos homebrew tap 2020-06-08 10:16:43 -07:00
Wez Furlong
c5a6862b48 ci: maybe fix tagging -> homebrew tap 2020-06-08 09:18:03 -07:00
Wez Furlong
9d6594869d ci: whoops, fixup path for homebrew tap update 2020-06-07 14:26:06 -07:00
Wez Furlong
a909047ee0 ci: include escape sequence stripper in macos homebrew tap 2020-06-07 13:05:23 -07:00
Wez Furlong
cb5aed126c ci: maybe automate updating homebrew tap
refs: https://github.com/wez/wezterm/issues/208
2020-06-07 12:48:41 -07:00
Wez Furlong
52aa395bea ci: apply black to generate-workflows.py 2020-06-07 12:20:56 -07:00
Wez Furlong
d755c270e4 ci: add automation to update the wezterm-bin AUR at tag time
This is untested beyond eyeballing the locally generated file.
Will need to make a couple of tags to test this for sure.

refs: https://github.com/wez/wezterm/issues/209
2020-06-07 12:19:41 -07:00
Wez Furlong
1049e92ce6 wezterm: fixup open wezterm here for drive letters
Drives need a single extra trailing \ to work, whereas other paths
seem to need two!
2020-06-03 21:40:36 -07:00
Wez Furlong
845a196b04 ci: change git download URL
looks like the SSL cert for kernel.org expired today, breaking some
of our CI flows.

Let's try switching to github's mirror for git.
2020-05-30 10:31:35 -07:00
Wez Furlong
d6a5d1c835 docs: split install page into pages by platform 2020-05-30 10:30:32 -07:00
Wez Furlong
71d98d84ca wezterm: windows installer: add Open WezTerm here context menu to explorer
When installed by the installer, we add registry entries to configure
directory context entries in explorer.exe that enable "Open WezTerm
here" to function.

This works by running your default program with the current working
directory set to the one specified.

I plan to only enable this when installed by the installer so that
these can be deleted/updated by the installer later on.

If you want wezterm to run a different program by default, then
you can change the default_prog config in the wezterm configuration;
I don't plan on adding lot of context menu entries for this.

Note that attempting to open in the `C:\` root doesn't always seem
to work for me.  I haven't had a chance to understand what's going
on there.

refs: https://github.com/wez/wezterm/issues/155
2020-05-28 09:13:52 -07:00
Wez Furlong
f57338edc7 docs: update for setup.exe installer 2020-05-25 12:52:06 -07:00
Wez Furlong
07386e446b Windows: Add Inno Setup based installer
closes: https://github.com/wez/wezterm/pull/193
2020-05-25 11:48:58 -07:00
Wez Furlong
845d990304 add strip-ansi-escape utility to wezterm package
I've been meaning to do this for a while: the intended purpose
is to use this to filter ansi escape sequences out of the prompt
in the shell pre-command hook.
2020-05-17 21:51:07 -07:00
Wez Furlong
3d7fc38bb6 Embed update info into appimage 2020-05-04 23:38:50 -07:00
Wez Furlong
90de55f807 include appstream data in AppImage 2020-05-04 22:55:33 -07:00
Wez Furlong
21f3591aed CI: add centos 8 builds 2020-05-04 21:55:23 -07:00
Wez Furlong
921719267f Add Fedora 32 to the CI builds and download docs 2020-05-04 07:38:14 -07:00
Wez Furlong
c207f2b545 prep docs for ubuntu 20 download 2020-05-03 23:10:42 -07:00
Wez Furlong
79e5c0e52d CI: set debconf to non-interactive and unblock ubuntu20
Also using sudo in the CI config if we don't need it.
2020-05-03 22:37:31 -07:00
Wez Furlong
b13ef15f28 Revise doc build for recent CI changes 2020-05-03 17:14:46 -07:00
Wez Furlong
ba804589fd Generate builds for more platforms
tweak some container names

fixup container names and regenerate the config

Ensure that curl is installed

the rust toolchain stuff wants curl

run apt update before apt install

centralize updating apt, and install sudo

revise get-deps script for slimmer debian images

more container related tweaks

get-deps: Don't require lsb-release on debianish systems

more get-deps improvements

Explicitly ask GH actions to recursively checkout the repo

Explicitly install git

fetch tags and tweak git build for debian systems

moar adjustments

remove deb8 (its wayland is too old), fixup debian publish

Ensure git build deps are installed always, tidy up sudo usage
2020-05-03 15:11:35 -07:00
Wez Furlong
ae5cfec1f4 docs: enable syntax highlighting for lua
This is a bit gross, but it works!
2020-04-06 17:39:57 -07:00
Wez Furlong
61e3545c68 pty: windows: allow loading a newer conpty dll
This commit allows loading the console functions from `conpty.dll`
instead of `kernel32.dll` which means that we can update and
track newer features than have been deployed to Windows.

In practical terms this means that we can now unlock mouse input
reporting in eg: VIM running under WSL.
refs: https://github.com/microsoft/terminal/issues/376

We're jumping the gun on this issue, which is tracking making
a proper supportable way to deploy this sort of update:
refs: https://github.com/microsoft/terminal/issues/1130

For now it seems easier just for us to bundle our own copy of
these bits.

This includes a speculative change to include those in our
Windows downloads also.

The binaries were built from
4f8acb4b9f
2020-04-06 12:48:54 -07:00
Wez Furlong
89bed12551 ci: point to a version that has node_modules 2020-02-14 15:53:32 -08:00
Wez Furlong
8f81029718 ci: maybe fix some flakeyness 2020-02-14 13:17:28 -08:00
Wez Furlong
0d352f296c docs: update for centos rpm downloads 2020-02-12 19:20:36 -08:00
Wez Furlong
c95215b057 ci: rename <target>pr to just <target> 2020-02-12 13:36:31 -08:00
Wez Furlong
5d2d5222cd ci: forgot to set the release tag for nightly builds 2020-02-12 13:32:05 -08:00
Wez Furlong
d96a942421 ci: black format generate-workflows 2020-02-12 13:20:11 -08:00
Wez Furlong
b6673db39a CI: disambiguate fedora and centos nightly rpms 2020-02-12 13:16:13 -08:00
Wez Furlong
98984ec3a5 CI: take a stab at generating workflows 2020-02-12 13:05:21 -08:00
Wez Furlong
d5f467513a CI: build rpms for centos 7 2020-02-12 08:30:41 -08:00
Wez Furlong
df98af9243 Allow building an RPM on CentOS 2020-02-10 19:22:38 -08:00
Wez Furlong
1fee3c11bb documentation update 2020-01-26 12:46:15 -08:00
Wez Furlong
ae2bcb0207 adjust appimage filename for nightly builds
They shouldn't have the hash in the nightly build
2020-01-20 23:34:50 -08:00
Wez Furlong
cb89ec73e3
First pass at building an AppImage (#125)
refs: https://github.com/wez/wezterm/issues/124
2020-01-20 23:11:38 -08:00
Wez Furlong
d644a78699
take a stab at fixing the windows CI to generate 64-bit (#120)
* take a stab at fixing the windows CI to generate 64-bit

* use actions-rs/toolchain more broadly

* fixup target dir for deploy script

* cut over to the rust action for installing rust
2020-01-19 15:38:24 -08:00
Wez Furlong
edd773c5a7 packaging: include the color schemes in the various packages
we don't yet know how to load them, but this puts them there in
readiness.
2020-01-12 20:51:14 -08:00
Wez Furlong
d199178dd7 docs: avoid occasional page build failure
Sometimes we race with the nightly build while it is deleting
and uploading artifacts.

Since they have stable names, just hard code those in the the
markdown.
2020-01-11 09:49:17 -08:00
Wez Furlong
b722dd178f add debug output for the pages builder
This sometimes fails and I think it is because of a race with
one of the jobs that uploads an artifact
2020-01-10 07:11:59 -08:00
Wez Furlong
db1d6b3085 remove dead script 2020-01-08 22:16:57 -08:00
Wez Furlong
d3c4e8e8b6 docs: tweak download page and add source tarball info 2019-12-29 23:06:29 -08:00
Wez Furlong
4681436bd1 docs: code generation for release info 2019-12-29 21:24:08 -08:00
Wez Furlong
c6a918922f Label the package as github for GitHub Actions 2019-12-29 19:12:00 -08:00
Wez Furlong
8964ebd795 Add ability to build an rpm on Fedora
ci/deploy.sh can now emit an rpm to your `~/rpmbuild/RPMS` dir.
2019-12-29 13:09:53 -08:00
Wez Furlong
db2194d793 Remove some bulky artifacts from the source tarball
* harfbuzz includes some ttf fixtures.
* libpng has some test images
* the wezterm web page has some movie files(!)

None of these are required to be in the source tarball, so strip them
out to save ~40MB and bring the tarball down to <5MB.

Refs: https://github.com/wez/wezterm/issues/46
2019-12-24 13:13:41 -08:00
Wez Furlong
11b79827de Add script that can produce a full source tarball
Full means "including git submodules" and makes it easier for folks to
download and build a release without sucking down large repos from
various locations, especially for folks with bandwidth constraints.

Upload the source tarball to the associated release.

Refs: https://github.com/wez/wezterm/issues/81
Refs: https://github.com/wez/wezterm/pull/46
Refs: https://github.com/wez/wezterm/pull/48
2019-12-24 09:41:15 -08:00
Wez Furlong
cdc77840b7 Add wezterm.desktop file to the debian package
This makes it a bit more convenient to launch wezterm, especially
on eg: a chromebook
2019-11-20 06:37:32 +00:00
lilydjwg
d14be5c482 linux binary: strip and add a tarball 2019-10-24 23:52:41 -07:00
Wez Furlong
2ad7f7084d tweak nightly build
I want to avoid creating/updating so many git tags for nightly builds,
so let's try restructuring things a bit.
2019-06-27 07:03:37 -07:00
Wez Furlong
4627b2e798 try to avoid a loop when doing nightlys, fixup linux nightly 2019-06-26 16:05:24 -07:00
Wez Furlong
e63ca622ff RIP: travis CI
It takes ~30 minutes to schedule a release build that takes just
over 50 minutes to run.  Travis kills builds that take 50 minutes,
so this is completely useless.

Meanwhile: azure is able to build and deploy all platforms within
the first 15-20 minutes.
2019-06-23 11:01:35 -07:00
Wez Furlong
6999f15204 really fix ' issue, schedule a nightly pre-release 2019-06-23 09:20:40 -07:00
Wez Furlong
c2a4ea163d adjust how the tag name is set for the packager 2019-06-23 07:53:11 -07:00
Wez Furlong
ee898dfce6 refactor azure bits into jobs 2019-06-23 06:47:35 -07:00
Wez Furlong
cd93f287fd Ask travis to build and publish a .deb to a github release 2019-03-24 17:49:28 -07:00
Wez Furlong
f7c3743247 maybe teach appveyor how to deploy windows builds 2019-03-24 13:55:08 -07:00
Wez Furlong
0d4a6d9a6d maybe package up windows 2019-03-24 10:42:20 -07:00
Wez Furlong
45c1f5b4f3 cleanup travis config, re-enable cargo test --all
Streamline the travis deploy builds; when TRAVIS_TAG is set
we'll run `--release` builds.

Don't error out in fontconfig/build.rs if fontconfig is not
installed.  This makes it possible to `cargo test --all` again
on the mac at the cost of potentially making it harder to troubleshoot
problems with not having fontconfig installed on linux.
However: the get-deps script is responsible for installing that.
2019-03-24 08:45:28 -07:00
Wez Furlong
fec3a6f0ab refine deploy scripts/config 2019-03-24 00:26:53 -07:00
Wez Furlong
c57ab9a942 Embed tag in the zip file name 2019-03-23 23:59:08 -07:00
Wez Furlong
c7739865f9 scripts for tagging 2019-03-23 22:58:23 -07:00
Wez Furlong
778b389283 Maybe configure github deployment for macOS 2019-03-23 22:53:20 -07:00
Wez Furlong
c93f967bc4 remove esctest 2019-03-23 14:30:54 -07:00
Wez Furlong
27cb18f8ae Build our own freetype, harfbuzz
This is primarily for macos where the default freetype
installation is unable to render color emoji, but should also
help make things more consistent across the various platforms.

It's a little bit awkward on linux because the font-loader crate
pulls in the now-conflicting servo-font* crates.  I've disabled
font-loader on linux systems; it's just calling fontconfig under
the covers anyway.
2019-03-23 09:28:40 -07:00
Wez Furlong
6cbb3ba432 impl IRM insert mode and improve esctest conformance
I've had mixed results with esctest; the IRM and cursor save/restore
tests fail for me in terminal.app, iterm2 and xterm, and fail in the
same way on wezterm, so I'm not sure if I'm not running those tests
correctly.  However, they did encourage the discovery of some other
real issues in the wezterm emulation.
2019-03-22 20:41:50 -07:00
Wez Furlong
9702d1cf5a Add plumbing for running esctest 2019-03-22 20:41:50 -07:00
Wez Furlong
11b22f8407 skip building harfbuz on macos 2019-02-19 08:59:39 -08:00
Wez Furlong
ca9e9c60c7 maybe build harfbuzz on travis 2018-02-22 21:48:49 -08:00
Wez Furlong
8d6364fa80 unbundle the generated harfbuzz rust bindings 2018-02-22 21:10:50 -08:00