All Projects → tkluck → pac4cli

tkluck / pac4cli

Licence: other
Proxy-auto-discovery for command-line applications

Programming Languages

python
139335 projects - #7 most used programming language
Makefile
30231 projects
shell
77523 projects
Dockerfile
14818 projects

Projects that are alternatives of or similar to pac4cli

You Dont Need Gui
Stop relying on GUI; CLI **ROCKS**
Stars: ✭ 4,766 (+23730%)
Mutual labels:  commandline
Ace
Node.js framework for creating command line applications
Stars: ✭ 233 (+1065%)
Mutual labels:  commandline
gatsby-theme-terminal
A Gatsby theme for techies who love terminal / command line / bash like portfolio.
Stars: ✭ 20 (+0%)
Mutual labels:  commandline
Tmpmail
A temporary email right from your terminal written in POSIX sh
Stars: ✭ 2,670 (+13250%)
Mutual labels:  commandline
Radare2
UNIX-like reverse engineering framework and command-line toolset
Stars: ✭ 15,412 (+76960%)
Mutual labels:  commandline
Kunst
Download and display album art or display embedded album art
Stars: ✭ 242 (+1110%)
Mutual labels:  commandline
Macos Downloader
Command line tool for downloading macOS installers and beta updates
Stars: ✭ 162 (+710%)
Mutual labels:  commandline
Blackeye-for-Windows
This is a Phishing tool. Phishing is a type of hacking also called credential harvesting. It creates fake websites for victims to login which saves their login info which includes IP, User-Agent, Username and Password to a file in the computer running Blackeye. This tool has been there for Linux and even Android via Termux. I converted it to Win…
Stars: ✭ 38 (+90%)
Mutual labels:  commandline
Functional intro to python
[tutorial]A functional, Data Science focused introduction to Python
Stars: ✭ 228 (+1040%)
Mutual labels:  commandline
googletranslate
Python Google Translate (using reverse-engineered public API, so free)
Stars: ✭ 67 (+235%)
Mutual labels:  commandline
Winfetch
🛠 A command-line system information utility written in PowerShell. Like Neofetch, but for Windows.
Stars: ✭ 189 (+845%)
Mutual labels:  commandline
Gitlab Cli
Create a merge request from command line in gitlab
Stars: ✭ 224 (+1020%)
Mutual labels:  commandline
todo-cli
✅ Command-line tool to manage Todo lists
Stars: ✭ 88 (+340%)
Mutual labels:  commandline
Psfzf
A PowerShell wrapper around the fuzzy finder fzf
Stars: ✭ 187 (+835%)
Mutual labels:  commandline
rdf2smw
Convert RDF to Semantic MediaWiki facts in MediaWiki XML format, with a standalone commandline tool
Stars: ✭ 18 (-10%)
Mutual labels:  commandline
Reactopt
A CLI React performance optimization tool that identifies potential unnecessary re-rendering
Stars: ✭ 1,975 (+9775%)
Mutual labels:  commandline
Tv Overlord
TV Overlord — Download and manage tv shows:
Stars: ✭ 242 (+1110%)
Mutual labels:  commandline
pendfetch
Double Pendulum visualised with fetching system information in Python.
Stars: ✭ 62 (+210%)
Mutual labels:  commandline
shell.how
Explain shell commands using next-generation autocomplete Fig.
Stars: ✭ 237 (+1085%)
Mutual labels:  commandline
semver-cli
semver-cli is a simple command line tool to compare and manipulate version strings.
Stars: ✭ 28 (+40%)
Mutual labels:  commandline

Proxy-auto-discovery for command line applications (pac4cli)

CircleCI

Introduction

On many corporate networks, applications need proxy-auto-discovery to know whether a certain URL is accessed either directly or through a web proxy. Browsers can typically handle this, but many command line applications (git, npm, apt, curl) rely on environment variable to hard-code a proxy regardless of the destination URL.

This little daemon enables these applications for auto-discovery by:

  • setting the http_proxy variable (and friends) to http://localhost:3128
  • providing a simple proxy at that port that does proxy-auto-discovery and connects accordingly.

System dependencies:

  • systemd
  • NetworkManager

Python library dependencies from PyPI can be installed through:

sudo pip3 install -r requirements.txt

Installation instructions

Ubuntu

The latest builds are available through a PPA:

sudo add-apt-repository ppa:tkluck/pac4cli
sudo apt update
sudo apt install pac4cli

You'll need to restart your shell for the new environment variables to take effect.

This will install pac4cli for most of your command line tools. However, we don't ship configuration for Apt. If you want to use pac4cli for software updates, you'll need to run the following:

sudo tee /etc/apt/apt.conf.d/99pac4cli <<CONFIG
Acquire::http::proxy "http://localhost:3128/";
Acquire::https::proxy "http://localhost:3128/";
# The following are needed to work around limitations
# in pac4cli's support of http features:
Acquire::http::No-Cache true;
Acquire::http::Pipeline-Depth 0;
CONFIG

The reason why this is not included in the Ubuntu package is that if pac4cli ever breaks, we could not ship an update to unbreak it.

Archlinux

This package is available in AUR.

Other (Mac, other linuxes)

The dependencies can be installed through

pip3 install -r requirements.txt

Then, use

make install

Just python setup.py install is not sufficient. That will only install the pac4cli module, but not the binary or the configuration files.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].