So yeah, I’m not sure this is possible, and I’m not in any kind of hurry either, but here’s the thing:
Next semester I’m gonna teach students about Linux System Administration (Basic stuff, cmdline-fu, how to install, how to manage, etc) and I don’t want them to have to do this on Unity.
Usually I just have them compile XFCE as a user using a nasty script I made that’s pulling everything from XFCE git master (I can’t believe it’s been working for more than a year without something breaking) but I would very much like to have them use MATE instead.
Problem though: you can’t make install MATE as a user.
So how to do this? I’m OK with shipping them compiled binaries, but they’ll have to sit in $HOME and I guess some file path are compiled in the source so I doubt I could just pull every binary from a random machine and use it.
I don’t think it is possible to install anything not as root? (or at least as “sudo” ?).
If you started with the minimal desktop and drop to “root” in “Recovery Mode” (after activating the network which requires a cable network connection!), you could install anything you want from the command line! (couldn’t you?).
I have actually asked the admins to install Ubuntu MATE instead of standard Ubuntu. Failing that I asked to have different DEs available, including MATE.
Sadly, no go on both end.
This course of action is effectively dead in the water.
There is however no restriction on what the students can install as users, as I’ve said I already had them compile and install XFCE for more than a year, this is a CS school so compiling and running programs is expected.
Is there any point teaching "hands-on" Linux system administration without the students having root privilages?
It seems to me that your problem is not technical - it's political. If you've a teaching position where you are supposed to give this course, then the establishment where you have to do this must provied a suitable environment. "User-privilages-only" for a sys-admin course defies all reason. To achieve a political solution you may have to go "above" the IT department, who are only following policies defined (authorised) by higher instances.
This is a "gumption-trap" - without the tools you cannot do the job. I hope your lobbying will be sucessful - if not there will be a frustrated teacher and short-dealt students.
@alpinejohn: in order to practice skills that require root access, students have to install / run VMs in Virtualbox.
Quick recap:
The students are using Ubuntu Linux Workstations that have VirtualBox installed
The default desktop of the workstations (not the VMs) is the awful Unity and there is no alternative DE. Asking for an alternative DE was done to no avail.
This is an impediment to efficiency as things such as ALT+TAB won’t work correctly and everything fires up fullscreen
I want to have them install MATE, not in a VM, directly inside their user sessions on their host workstations.
Compiling, Installing and running programs as non-root user is both possible and authorized. Installing a program does not necessarily mean you have to use sudo.
They don’t have root access on the workstations, with good reasons. They won’t ever have root access on the workstations.
They don’t have authority over the network, with good reasons. They won’t ever gain authority over the network.
Some MATE components refuse to install into the location given during ./autogen, instead they try to install to hardcoded location owned by root
I’m looking for a purely technical solution, I’m not looking for a solution that will require to:
Negociate with a human
Ninja my way into the premises at night to hijack the systems
Okay, one more day spent trying to get this to work.
No joy yet. I was able to make some progress but I think I’m gonna have to write a shell script to completely replace the install process at least for mate-panel.