From 466f95d3babdf55bfb9a8aa74697cac8f136590b Mon Sep 17 00:00:00 2001 From: Andrew Zhou Date: Sat, 4 Jul 2020 09:03:48 -0500 Subject: Add auxiliary files to macOS Application bundle Fixes #2653. --- CHANGELOG.md | 1 + Makefile | 18 ++++++++++++++++-- README.md | 9 +++------ 3 files changed, 20 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ccf6cd07..801869ea 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Minimum Rust version has been bumped to 1.41.0 - Prebuilt Linux binaries have been removed +- Added manpage, terminfo, and completions to macOS application bundle ### Removed diff --git a/Makefile b/Makefile index a2589801..3b429936 100644 --- a/Makefile +++ b/Makefile @@ -1,12 +1,21 @@ TARGET = alacritty -APP_NAME = Alacritty.app ASSETS_DIR = extra RELEASE_DIR = target/release +MANPAGE = $(ASSETS_DIR)/alacritty.man +TERMINFO = $(ASSETS_DIR)/alacritty.info +COMPLETIONS_DIR = $(ASSETS_DIR)/completions +COMPLETIONS = $(COMPLETIONS_DIR)/_alacritty \ + $(COMPLETIONS_DIR)/alacritty.bash \ + $(COMPLETIONS_DIR)/alacritty.fish + +APP_NAME = Alacritty.app APP_TEMPLATE = $(ASSETS_DIR)/osx/$(APP_NAME) APP_DIR = $(RELEASE_DIR)/osx APP_BINARY = $(RELEASE_DIR)/$(TARGET) APP_BINARY_DIR = $(APP_DIR)/$(APP_NAME)/Contents/MacOS +APP_EXTRAS_DIR = $(APP_DIR)/$(APP_NAME)/Contents/Resources +APP_COMPLETIONS_DIR = $(APP_EXTRAS_DIR)/completions DMG_NAME = Alacritty.dmg DMG_DIR = $(RELEASE_DIR)/osx @@ -25,10 +34,15 @@ $(TARGET): MACOSX_DEPLOYMENT_TARGET="10.11" cargo build --release app: | $(APP_NAME) ## Clone Alacritty.app template and mount binary -$(APP_NAME): $(TARGET) $(APP_TEMPLATE) +$(APP_NAME): $(TARGET) @mkdir -p $(APP_BINARY_DIR) + @mkdir -p $(APP_EXTRAS_DIR) + @mkdir -p $(APP_COMPLETIONS_DIR) + @gzip -c $(MANPAGE) > $(APP_EXTRAS_DIR)/alacritty.1.gz + @tic -xe alacritty,alacritty-direct -o $(APP_EXTRAS_DIR) $(TERMINFO) @cp -fRp $(APP_TEMPLATE) $(APP_DIR) @cp -fp $(APP_BINARY) $(APP_BINARY_DIR) + @cp -fp $(COMPLETIONS) $(APP_COMPLETIONS_DIR) @touch -r "$(APP_BINARY)" "$(APP_DIR)/$(APP_NAME)" @echo "Created '$@' in '$(APP_DIR)'" diff --git a/README.md b/README.md index 3ec4f231..f6dba7bb 100644 --- a/README.md +++ b/README.md @@ -131,12 +131,9 @@ pkg install alacritty brew cask install alacritty ``` -Once the cask is installed, it is recommended to setup the -[manual page](INSTALL.md#manual-page), -[shell completions](INSTALL.md#shell-completions), and -[terminfo definitions](INSTALL.md#terminfo). These instructions need to be -followed from within the Alacritty source for your version, which can be found -on the [GitHub releases page](https://github.com/alacritty/alacritty/releases). +Once the cask is installed, it is recommended to setup the manual page, shell +completions, and terminfo definitions. These are located inside the installed +application's Resources directory: `Alacritty.app/Contents/Resources`. ### Windows -- cgit v1.2.3