Buildpy Documentation Release 1.8.12
Total Page:16
File Type:pdf, Size:1020Kb
buildpy Documentation Release 1.8.12 Blake Huber Jun 05, 2021 README 1 Summary 1 2 Getting Started 3 3 Documentation 5 4 Supported Linux Distributions7 5 Help 9 6 Author & Copyright 13 7 Disclaimer 15 8 License 17 9 Dependencies 27 10 Installation 29 10.1 Debian, Ubuntu, Linux Mint, Ubuntu Variants............................. 29 10.2 Redhat, CentOS, Fedora RPM-based Distributions........................... 31 11 Upgrading 35 11.1 Debian, Ubuntu Variants......................................... 35 11.2 Upgrading Redhat-based Distributions................................. 36 12 Uninstall 39 12.1 Debian and Ubuntu Variants....................................... 39 12.2 Redhat, CentOS, Fedora RPM Variants................................. 39 13 Use Cases 41 13.1 Verify Operating System Dependencies................................. 41 13.2 Compile Python 3 - Basic Installation.................................. 42 13.3 Compile Python 3 - Advanced Installation................................ 42 13.4 Compile Python 3 - Specific Version................................... 43 13.5 Unattended Install............................................ 43 13.6 Uninstalling Python 3 Versions..................................... 44 i 14 Frequently Asked Questions 45 14.1 General Questions............................................ 46 14.2 Required User Permissions........................................ 46 14.3 Python Version Support......................................... 47 14.4 Supported Linux Operating System Distributions............................ 47 14.5 Uninstall Python3............................................ 48 14.6 Logging FAQ............................................... 48 14.7 Miscellaneous Questions......................................... 48 15 Screenshot Index 51 16 Operating System Detection 53 17 Python Binary Version Status 55 18 OS Packages Installed Status 57 19 Download Python Source (Default) 59 20 Download Python Source, Named Version 61 21 Remove Build Artifacts 63 22 Program Information 65 23 Log Files 69 24 buildpy Source Code 71 24.1 Bash Module Index............................................ 71 24.2 buildpy.................................................. 71 24.3 colors.sh................................................. 126 24.4 exitcodes.sh............................................... 131 24.5 version.py................................................ 132 24.6 os_distro.sh................................................ 132 24.7 std_functions.sh............................................. 150 25 Debian Package Creation 167 25.1 Debian Package Creation Start...................................... 167 25.2 Debian Package Creation Build..................................... 168 25.3 Debian Package Final Contents..................................... 169 26 RPM Package Creation 171 26.1 RPM Package Assembly......................................... 172 26.2 RPM Package Build........................................... 173 26.3 Docker RPM Package Build....................................... 174 26.4 RPM Package Final Contents...................................... 175 27 Current Release 177 27.1 v1.8.12 | Release Notes.......................................... 177 28 Release History 179 29 Release Note Index 181 29.1 v1.8.11 | Release Notes.......................................... 181 29.2 v1.8.10 | Release Notes.......................................... 182 29.3 v1.8.9 | Release Notes.......................................... 182 ii 29.4 v1.8.8 | Release Notes.......................................... 183 29.5 v1.8.5 | Release Notes.......................................... 183 29.6 v1.8.3 | Release Notes.......................................... 184 29.7 v1.8.1 | Release Notes.......................................... 184 29.8 v1.7.20 | Release Notes.......................................... 185 29.9 v1.7.19 | Release Notes.......................................... 185 29.10 v1.7.18 | Release Notes.......................................... 186 29.11 v1.7.17 | Release Notes.......................................... 186 29.12 v1.7.16 | Release Notes.......................................... 186 29.13 v1.7.15 | Release Notes.......................................... 187 30 Module Index 189 31 Site Index 191 32 Search Project 193 iii iv CHAPTER 1 Summary • buildpy is a utility for compiling and installing on Linux. • Automatically downloads and compiles Python 2.7 to 3.7+ from python.org source. • Manages the installation of Linux OS dependencies to enable python3 advanced runtime features. • Optional quiet mode for fully automated, unattended installs. System-level Python3 • buildpy compiles, installs, and configures Python binaries for the entire system. • If you wish to build Python for a single user, consider pipenv Back to Table Of Contents 1 buildpy Documentation, Release 1.8.12 2 Chapter 1. Summary CHAPTER 2 Getting Started Before starting, we recommended reviewing the following: • Read the Frequently Asked Questions. • Reviewing the buildpy feature overview (below) to learn about buildpy. Back to Table Of Contents 3 buildpy Documentation, Release 1.8.12 4 Chapter 2. Getting Started CHAPTER 3 Documentation Online • Complete html documentation available at http://buildpy.readthedocs.io. Download: Available via download in the formats below • pdf format • Amazon Kindle (epub) format Source Code • buildpython3 git repository Back to Table Of Contents 5 buildpy Documentation, Release 1.8.12 6 Chapter 3. Documentation CHAPTER 4 Supported Linux Distributions Ubuntu, Ubuntu-based Variants • : Ubuntu variants based on 14.04+ • : Ubuntu variants based on 16.04, 16.10+ • : Ubuntu variants based on 18.04, 18.10+ •,, Redhat, Redhat-based Variants • • • • (2017+) • (2018+) Note: Older versions than listed above may be compatible, but not have not been tested Back to Table Of Contents 7 buildpy Documentation, Release 1.8.12 8 Chapter 4. Supported Linux Distributions CHAPTER 5 Help To display the help menu: $ buildpy --help 9 buildpy Documentation, Release 1.8.12 10 Chapter 5. Help buildpy Documentation, Release 1.8.12 Back to Table Of Contents 11 buildpy Documentation, Release 1.8.12 12 Chapter 5. Help CHAPTER 6 Author & Copyright All works contained herein copyrighted via below author unless work is explicitly noted by an alternate author. • Copyright 2017-2021 Blake Huber, All Rights Reserved. Sofware License • Software is licensed and protected under the GNU General Public License Agreement v3. Back to Table Of Contents 13 buildpy Documentation, Release 1.8.12 14 Chapter 6. Author & Copyright CHAPTER 7 Disclaimer Code is provided “as is”. No liability is assumed by either the code’s originating author nor this repo’s owner for their use at AWS or any other facility. Furthermore, running function code at AWS may incur monetary charges; in some cases, charges may be substantial. Charges are the sole responsibility of the account holder executing code obtained from this library. Additional terms may be found in the complete license agreement. Table Of Contents 15 buildpy Documentation, Release 1.8.12 16 Chapter 7. Disclaimer CHAPTER 8 License GNU GENERAL PUBLIC LICENSE Version3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. http://fsf.org/ Everyone is permitted to copy and distribute verba- tim copies of this license document, but changing it is not allowed. Preamble The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program–to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. For the developers’ and authors’ protection, the GPL clearly explains that there is no warranty for this free software. For both users’ and authors’ sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. 17 buildpy Documentation, Release 1.8.12 Some devices are designed to deny users