GitXplorerGitXplorer
s

python-installer-experiments

public
0 stars
0 forks
0 issues

Commits

List of commits on branch master.
Unverified
2608a1cf50c89e29415a67f65f8e0e8d59a20284

notes for native installers

ssanathkr committed 6 years ago
Unverified
d45968df076886cfda4bb4beaf570b5a8537107a

Instructions to build inside container:

ssanathkr committed 6 years ago
Unverified
b5f48f2ed29085fe241573750637223001d9e88a

Installing sam inside various linux docker environments

ssanathkr committed 6 years ago
Verified
274c6f8233d94f647f5f9989d90822447787a294

Update README.md

ssanathkr committed 6 years ago
Verified
885cddbcd509a4c2a5d7bab2cf5d95c0e2e6b17d

Update README.md

ssanathkr committed 6 years ago
Verified
0efed9b427574898f96a57721dfc2761b94d9282

Update README.md

ssanathkr committed 6 years ago

README

The README file for this repository.

python-installer-experiments

How can I create a self-contained Python application installer for Linux?

This repository contains examples of doing this for AWS SAM CLI tool using Linuxbrew package manager. Linuxbrew is an official port of Homebrew MacOS package manager for Linux. It can be installed inside a home directory (no sudo needed), does not use any system libraries (except glibc and gcc). Installations within the Linuxbrew environment are self-contained, not exposed to the $PATH (unless you choose to), and easily removable.

AWS SAM CLI

Pre-reqs: wget git gcc

# Installation
wget -O ~/sam https://raw.githubusercontent.com/sanathkr/python-installer-experiments/master/sam
chmod a+x ~/sam
alias sam=~/sam

# Usage
sam --version

# Upgrade
sam upgrade

Docker

Ubuntu

docker build -t sam:ubuntu ./docker/ubuntu/Dockerfile
docker run sam:ubuntu --help

AmazonLinux 2

docker build -t sam:al2 ./docker/al2/Dockerfile
docker run sam:al2 --help

Lambci

docker build -t sam:lambci-ruby2.5 ./docker/al2/Dockerfile
docker run sam:lambci-ruby2.7 --help

Native Installers

Native installers like deb & rpm packages can be easily built by wrapping the Install Script within the package managers. The installer will simply copy the shell script to appropriate location and do a fresh Linuxbrew+SAMCLI install. The shell script is self-sufficient to run SAM CLI and upgrade it in future.