Commit Graph

161 Commits

Author SHA1 Message Date
yuvipanda
3f0c8942cc Preserve PATH when using sudo -E
jupyterhub admins should be able to run `sudo -E pip install numpy`
and install numpy into the user environment. However, since pip
is in the PATH we explicitly set in jupyterhub_config.py and
sudo doesn't preserve PATH, this won't work.

We exempt jupyterhub-admins groups from the PATH restriction,
so sudo -E works. This has some security costs, but we are already
allowing passwordless roots for them with unrestricted paths...
2018-06-28 01:22:27 -07:00
yuvipanda
dd53176889 Start JupyterHub / CHP when system starts 2018-06-28 00:49:36 -07:00
yuvipanda
8401012ab6 Start / Restart JupyterHub / CHP as required 2018-06-28 00:06:11 -07:00
yuvipanda
582ef74a61 Restart JupyterHub after each install
Restarting JupyterHub should be non-disruptive, and helps
make the config changes come true ASAP.
2018-06-27 18:07:59 -07:00
yuvipanda
8a19b02864 Install conda & jupyterlab explicitly
conda was not installed in the user environment explicitly,
so users can't install conda packages themselves.

Also install JupyterLab while we're at it :)
2018-06-27 18:05:20 -07:00
yuvipanda
bfd2a8bca3 Store hub state inside install_prefix
rm -rf'ing the prefix should get rid of almost everything
2018-06-27 14:21:08 -07:00
yuvipanda
12698a20ed Move all config files inside INSTALL_PREFIX
Makes cleanup easier!
2018-06-27 03:17:01 -07:00
yuvipanda
cf4bd7e36e Separate jupyterhub & chp services
Allows restarting hub for config changes without disrupting user
service!
2018-06-27 02:03:08 -07:00
yuvipanda
4bfc04c225 Add escapism as a package dependency 2018-06-27 00:35:17 -07:00
yuvipanda
f90a0fa540 Use classic unix users rather than systemd dynamic users
Dynamic Users are neat and probably very useful for a tmpnb
style situation. However, for regular use they have the following
problems:

1. Can't set ProtectHome=no, so you can never apt install or
   similar from inside admin accounts.
2. Dynamic uid / gid makes it hard to write sudo rules. We want
   admin users to have sudo.
3. Persistent uids / gids are very useful for ad-hoc ACLs between
   users. gid sharing isn't the most flexible sharing mechanism,
   but it is well known & quite useful.
4. /etc/skel is pretty useful!
2018-06-26 23:50:07 -07:00
yuvipanda
5f4aed5b4b Add a simple installer!
Sortof re-invents what debian packages do a little bit.
2018-06-26 18:37:24 -07:00