Caching https is hard to set up, sorry. You need to create a local CA certficate, and configure the client programs to accept it. I don't know what proxy software you'd have to use for it.
Squid isn't great for caching large downloads. It doesn't support partial instances, i.e. resuming interrupted downloads.
Polipo supports partial instances, and I love it as a personal proxy. It has been slightly unreliable at times. In particular it may suffer if you have an old dnsmasq implementation on your home router, which gets confused by simultaneous DNS queries for ipv4 and ipv6. It does not support https interception/caching.
Hopefully your client software respects the standand environment variables like
$http_proxy. If your distro supports it, you can set e.g.
http_proxy=http://localhost:8123/ in /etc/environment, and it will be set at login time by pam_env. (debian suffered from a bug at some recent point which disabled this, but I think it's working on my current debian unstable machine).