#!/bin/bash
#p="org.gnome.system.proxy mode";g=gsettings;n="'none'";if [ `$g get $p` == $n ];then $g set $p manual;else $g set $p $n;fi;echo `$g get $p`
p="org.gnome.system.proxy mode";
g=gsettings;
n="'none'";
if [ `$g get $p` == $n ];then
echo "There is no proxy set";
export {{http,https,ftp}_proxy,{HTTP,HTTPS,FTP}_PROXY}=http://`gsettings get org.gnome.system.proxy.http host | sed 's/\x27//g'`:`gsettings get org.gnome.system.proxy.http port`
export {no_proxy,NO_PROXY}=`gsettings get org.gnome.system.proxy ignore-hosts | sed -s 's/[\x27\x5b ]//g;s/]//'`;
export NO_PROXY_LIST=`echo $no_proxy | sed -s 's/,/;/g'`;
# NPM
npm config set proxy true
# APT
sudo mv ~/.apt.conf /etc/apt/apt.conf
$g set $p manual;
else
echo "There is proxy set";
unset {{http,https,ftp}_proxy,{HTTP,HTTPS,FTP}_PROXY};
unset {no_proxy,NO_PROXY};
unset NO_PROXY_LIST;
# NPM
npm config set proxy false
npm cache clean
# APT
sudo mv /etc/apt/apt.conf ~/.apt.conf
$g set $p $n;
fi;
echo `$g get $p`