A simple and easy to use Python's PIP configuration manager, similar to the Arch Linux's Java manager.

Overview

PIPCONF - The PIP configuration manager

If you need to manage multiple configurations containing indexes and trusted hosts for PIP, this project was made for you.

Introduction

The pipconf is based in pip.conf files in $HOME/.pip folder. But you won't create it with this name. So, you need to create your configuration files following the template config-file-name.conf.

For the first steps, create a $HOME/.pip folder.

# Create the folder, and enter it
$ mkdir $HOME/.pip
$ cd $HOME/.pip

# Create 2 files inside .pip folder
$ touch personal-config.conf company-config.conf

Inside the files, you can put the configurations like index-url, timeout, extra-index-url, trusted-host, etc. You can confer here all the options.

<!-- personal-config.conf -->

[global]
index-url = https://pypi.org/simple/
trusted-host = pypi.org
<!-- company-config.conf -->

[global]
index-url = http://mycompany.com/artifactory/api/pypi/pypi/simple
extra-index-url = http://mycompany.com/artifactory/api/pypi/pypi-local/simple/
trusted-host = mycompany.com

Instalation

The package is available at pypi.org. Then, you can install it using pip.

$ pip install pipconf

If you prefet to install from code, try this. This project uses only pure Python. So, you don't need to install any project dependencies. Just run the setuptools installer.

$ python setup.py install

Usage

$ pipconf --help

The expected output should be something like the following content.

usage: pipconf [-h] [--current] [--list] [--set FILENAME] [--local]

______ ___________  _____ _____ _   _ ______
| ___ \_   _| ___ \/  __ \  _  | \ | ||  ___|
| |_/ / | | | |_/ /| /  \/ | | |  \| || |_
|  __/  | | |  __/ | |   | | | | . ` ||  _|
| |    _| |_| |    | \__/\ \_/ / |\  || |
\_|    \___/\_|     \____/\___/\_| \_/\_|  v0.1.0

Under BSD-2-Clause License, by @jjpaulo2
Contribute at https://github.com/jjpaulo2/pipconf

optional arguments:
-h, --help      show this help message and exit

display informations:
--current       show the current pip configuration file
--list          list all user configurations avaliable at $HOME/.pip

change configuration:
--set FILENAME  set the global configuration for pip from a file in $HOME/.pip
--local         set the pip configuration for the current directory file

Querying the current configuration file

$ pipconf --current

This command will show the current file used. If you are not using anyone, it will show it too.

The current pip configuration file is /home/jjpaulo2/.pip/personal-config.conf

Querying the avaliable configuration files in $HOME/.pip

$ pipconf --list

This command will show the avaliable configuration files in $HOME/.pip folder. If someone of then is being used, you will see a * simbol at it left.

* personal-config (/home/jjpaulo2/.pip/personal-config.conf)
  company-config (/home/jjpaulo2/.pip/company-config.conf)

Setting a file from $HOME/.pip as current configuration file

$ pipconf --set company-config

This will update the current file used, and will output the following message.

Current pip configuration successfully updated.
The active config file is /home/jjpaulo2/.pip/company-config.conf

Setting a pip.conf file from the current working directory

$ ls
pip.conf ...

If the current directory you are in, have a pip.conf file, then you can just active it.

pipconf --local

The output should be something like the following content.

Geting configuration file from current directory.
The active config file is /home/jjpaulo2/dev/myproject/pip.conf
You might also like...
An assistant to guess your pip dependencies from your code, without using a requirements file.

Pip Sala Bim is an assistant to guess your pip dependencies from your code, without using a requirements file. Pip Sala Bim will tell you which packag

InverterApi - This project has been designed to take monitoring data from Voltronic, Axpert, Mppsolar PIP, Voltacon, Effekta

InverterApi - This project has been designed to take monitoring data from Voltronic, Axpert, Mppsolar PIP, Voltacon, Effekta

Py4J enables Python programs to dynamically access arbitrary Java objects

Py4J Py4J enables Python programs running in a Python interpreter to dynamically access Java objects in a Java Virtual Machine. Methods are called as

Todos os exercícios do Curso de Python, do canal Curso em Vídeo, resolvidos em Python, Javascript, Java, C++, C# e mais...
Todos os exercícios do Curso de Python, do canal Curso em Vídeo, resolvidos em Python, Javascript, Java, C++, C# e mais...

Exercícios - CeV Oferecido por Linguagens utilizadas atualmente O que vai encontrar aqui? 👀 Esse repositório é dedicado a armazenar todos os enunciad

Tools for analyzing Java JVM gc log files

gc_log This package consists of two separate utilities useful for : gc_log_visualizer.py regionsize.py GC Log Visualizer This was updated to run under

Check broken access control exists in the Java web application
Check broken access control exists in the Java web application

javaEeAccessControlCheck Check broken access control exists in the Java web application. 检查 Java Web 应用程序中是否存在访问控制绕过问题。 使用 python3 javaEeAccessControl

🎉 🎉 PyComp - Java Code compiler written in python.

🎉 🎉 PyComp Java Code compiler written in python. This is yet another compiler meant for babcock students project which was created using pure python

PyGo custom language, New but similar language programming

New but similar language programming. Now we are capable to program in a very similar language to Python but at the same time get the efficiency of Go.

Jogo em redes similar ao clássico pedra papel e tesoura

Batalha Tática Tecnologias de Redes de Computadores-A-N-JOGOS DIGITAIS Professor Fabio Henrique Cabrini Alunos: Eric Henrique de Oliveira Silva - RA 1

Comments
  • Comando para criar nova configuração

    Comando para criar nova configuração

    Podemos adicionar um novo comando à ferramenta, como por exemplo, pipconf new <config-name> para que seja criado um novo arquivo de configurações, e abrindo ele em algum editor de texto padrão para edição.

    opened by jjpaulo2 0
  • Criar arquivo pip.conf automaticamente na primeira execução

    Criar arquivo pip.conf automaticamente na primeira execução

    Hoje, é necessário primeiro configurar manualmente a pasta $HOME/.pip e povoar ela com ao menos um arquivo para tornar possível iniciar a utilizar a ferramenta.

    Seria ideal que caso a pasta $HOME/.pip não exista ou não haja nenhuma arquivo de configuração nela, isso seja gerado automaticamente na primeira vez em que a ferramenta é executada.

    opened by jjpaulo2 0
Releases(1.0.0)
Owner
João Paulo Carvalho
Back End Engineer at Serasa eCred. Python lover. Game development enthusiast.
João Paulo Carvalho
contextlib2 is a backport of the standard library's contextlib module to earlier Python versions.

contextlib2 is a backport of the standard library's contextlib module to earlier Python versions. It also sometimes serves as a real world proving gro

Jazzband 35 Dec 23, 2022
A practice program to find the LCM i.e Lowest Common Multiplication of two numbers using python without library.

Finding-LCM-using-python-from-scratch Here, I write a practice program to find the LCM i.e Lowest Common Multiplication of two numbers using python wi

Sachin Vinayak Dabhade 4 Sep 24, 2021
Turn crypto miner on/off depending on powerwall charge level

Mining Crypto with Tesla Solar and Powerwalls This script turns a crypto miner on and off when the Tesla Powerwall level drops/rises above a certain t

Matt 1 Nov 09, 2021
An Embedded Linux Project Build and Compile Tool -- An Bitbake UI Extension

Dianshao - An Embedded Linux Project Build and Compile Tool

0 Mar 27, 2022
An OpenSource crowd-sourced cooking recipes website

An OpenSource crowd-sourced cooking recipes website

21 Jul 31, 2022
Herramienta para poder automatizar reuniones en Zoom.

Crear Reunión Zoom con Python Herramienta para poder automatizar reuniones en Zoom. Librerías Requeridas Nombre Comando PyAutoGui pip install pyautogu

JkDev 3 Nov 12, 2022
Remove Sheet Protection from .xlsx files. Easily.

🔓 Excel Sheet Unlocker Remove sheet protection from .xlsx files. How to use Run Run the script/packaged executable from the command line. Universal u

Daniel 3 Nov 16, 2022
github action test, because I dont know it.

mad-y testing testing pip install -r requirements.txt add the DISCORD_TOKEN value to your env vars. and run mad-y how to Deploy ` docker build -t mad-

Mit 1 Oct 29, 2021
It's a repo for Cramer's rule, which is some math crap or something idk

It's a repo for Cramer's rule, which is some math crap or something idk (just a joke, it's not crap; don't take that seriously, math teachers)

Module64 0 Aug 31, 2022
Project based on pure python with OOP

Object oriented programming review Object oriented programming (OOP) is among the most used programming paradigms (if not the most common) in the indu

Facundo Abrahan Cerimeli 1 May 09, 2022
Proyectos de ejercicios básicos y avanzados hecho en python

Proyectos Básicos y Avanzados hecho en python Instalación: Tener instalado python 3.x o superior. Tener pip instalado. Tener virtualenv o venv instala

Karlo Xavier Chok 1 Dec 27, 2021
Geodesic Dome Math

dome Geodesic Dome Math Python dome tool dome.py calculates an icosahedron or 2v geodesic dome and creates 3d printable hubs as OpenSCAD sources. usag

Brian Olson 2 Feb 09, 2022
Submission to the HEAR2021 Challenge

Submission to the HEAR 2021 Challenge For model evaluation, python=3.8 and cuda10.2 with cudnn7.6.5 have been tested. The work uses a mixed supervised

Heinrich Dinkel 10 Dec 08, 2022
Python Osmium Examples

Python Osmium Examples This is a set (currently of size 1) of examples showing practical usage of PyOsmium, a thin wrapper around the osmium library.

Martijn van Exel 1 Jan 26, 2022
A project to work with databases in 4 worksheets, insert, update, select, delete using Python and MySqI

A project to work with databases in 4 worksheets, insert, update, select, delete using Python and MySqI As a small project for school or college hope it is useful

Sina Org 1 Jan 11, 2022
Python script to autodetect a base set of swiftlint rules.

swiftlint-autodetect Python script to autodetect a base set of swiftlint rules. Installation brew install pipx

Jonathan Wight 24 Sep 20, 2022
This repository holds those infrastructure-level modules, that every application requires that follows the core 12-factor principles.

py-12f-common About This repository holds those infrastructure-level modules, that every application requires that follows the core 12-factor principl

Tamás Benke 1 Dec 15, 2022
Projeto de Jogo de dados em Python 3 onde é definido o lado a ser apostado e número de jogadas, pontuando os acertos e exibindo se ganhou ou perdeu.

Jogo de DadoX Projeto de script que simula um Jogo de dados em Python 3 onde é definido o lado a ser apostado (1, 2, 3, 4, 5 e 6) ou se vai ser um núm

Estênio Mariano 1 Jul 10, 2021
Webcash is an experimental e-cash (electronic cash)

Webcash Webcash is an experimental new electronic cash ("e-cash") that enables decentralized and instant payments to anyone, anywhere in the world. Us

Mark Friedenbach 0 Feb 26, 2022
Simplest way to find Appointments in Bürgeramt Berlin, Not over engineered.

Simplest way to find Appointments in Bürgeramt Berlin, Not over engineered. Der einfachste Weg, Termine im Bürgeramt Berlin zu finden, ohne viel Schnickschnack.

Jannis 8 Nov 25, 2022