Skip to main content

make-install

Install github repositories by making and copying executable.

This is unreviewed AI-genreated code

Motivation

I do not like running make install and make uninstall. I like installed files and packages to be tracked and queriable. But not tall supports this

basher can copy or symlink binaries but does not run make. bpkg runs make and copies files but cannot symlink to make code editable. I want to to have syminks and a remake command.

Finding executables

After building, make-install will symlink everything in /bin and the top level. You can also make a make-install.json command:

{"bins": ["build/mytool", "scripts/helper"]}

Building

If the package has a Makefile, makefile or GNUmakefile, make-install runs make in it — the default target, not install. A package with no makefile is simply linked, which is basher's behaviour.

make-install does not install build dependencies and has no way to describe them. A C program needing GTK headers still needs you to install them.

Installation

pipx install make-install
eval "$(make-install init)"        # adds ~/.make-install/bin to PATH; put this in your shell rc

$MAKE_INSTALL_ROOT overrides the location, which defaults to ~/.make-install.

Usage

Install from a github repo

make-install install talwrii/x11-grab-dialog

Install from source

make-install install .

Link from source (uses symlinks so builds change binaries immediately)

make-install link .

Rebuild a package and relink it. For a linked checkout this rebuilds your working tree.

make-install remake x11-grab-dialog

Remove a package. A copy is deleted; a linked checkout is left alone and only the symlinks go.

make-install uninstall x11-grab-dialog

Show what is installed, and which of them are links.

make-install list

Metadata

Release files for make-install 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for make-install 1.0.0
File Size Uploaded
make_install-1.0.0.tar.gz 5.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for make-install 1.0.0
File Interpreter ABI Platform
make_install-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 10.9 kB

Release files / make_install-1.0.0.tar.gz

Download URL make_install-1.0.0.tar.gz
Size 5.2 kB
Tags Source
SHA-256 checksum
How to use checksums
0ed39e43557d91a4b5978173719602bafd3c37aa9cf665065bf1f6e6f1b95c73
BLAKE2b-256 checksum
How to use checksums
db05c2b37122563c0acf7a88a20c59a5a688b306bb5cc4f383b8108b7bcbc753
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / make_install-1.0.0-py3-none-any.whl

Download URL make_install-1.0.0-py3-none-any.whl
Size 5.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c210436d385e1f528ea0c5babbad63e472a50e120fc327d2a2ea33d3fb055de4
BLAKE2b-256 checksum
How to use checksums
ce3c4136003981ad08ba61dd0a58d2b69ce4dd3ac913d42eafb8f545fbdfd764
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page