1 |
On Mon, Aug 19, 2019 at 2:29 AM Raffaele Belardi |
2 |
<raffaele.belardi@××.com> wrote: |
3 |
> |
4 |
> Yesterday I tried to switch my ~amd64 box from Gnome/systemd to Xfce/openrc. I followed |
5 |
> the wiki [1], [2] to install Xfce from a Gnome terminal: |
6 |
> |
7 |
> - switch profile from 17.1/desktop/gnome/systemd to 17.1/desktop |
8 |
> - emerge xfce4-meta and some xfce4 applications/panels/extras |
9 |
> - unmerged systemd and emerged OpenRC |
10 |
> - emerge -uDvN world to account for the different profile flags |
11 |
|
12 |
Next time you do something like this, keep in mind that Gnome and xfce |
13 |
can co-exist on the same system, and so can openrc and systemd. |
14 |
|
15 |
At this point you're probably just going to want to troubleshoot what |
16 |
you are left with, though you could consider reverting back to your |
17 |
old config and starting over if you have backups/etc. |
18 |
|
19 |
I imagine that not many people move from systemd to openrc, since the |
20 |
latter is basically the default on Gentoo already. If I were going to |
21 |
migrate a working system between the two I would probably do it |
22 |
stepwise: |
23 |
|
24 |
1. Rebuild the kernel with support for both systemd and openrc. Boot |
25 |
that (under systemd) and confirm it is working. |
26 |
2. Install xfce and get that working fine (under systemd). That |
27 |
really has no tie-in to the service manager but if you have this |
28 |
working it is one less thing to mess with and it simplifies your |
29 |
system. |
30 |
3. Install openrc and reboot under systemd just to make sure |
31 |
everything is still working fine. I forget what the defaults are but |
32 |
you might need to tweak your systemd USE flags so that it uses the |
33 |
sysvinit versions of halt/reboot/poweroff/telinit and so on. It works |
34 |
just fine with its own version of these tools or with sysvinit. |
35 |
4. Make sure you have your openrc configured the way you want it (I |
36 |
don't think it has any issues with using rc-update and so on while |
37 |
systemd is running, but I haven't tried that). |
38 |
5. Switch your kernel command line to boot with openrc, and make a |
39 |
note of what it said before. If it boots fine you're now running |
40 |
openrc and just have to clean up the stuff you don't want. If it |
41 |
doesn't boot you just have to edit your command line and you're back |
42 |
up and running with systemd until you sort it out. |
43 |
6. Switch your profile, do the -uDvN to rebuild anything impacted, |
44 |
and depclean the stuff you don't need. Reboot to test. |
45 |
|
46 |
By doing it this way you will be just making one change at a time with |
47 |
a reboot in-between so that you know what broke if something breaks. |
48 |
The way you did it is potentially more time-efficient, but if |
49 |
something breaks you are going to be hunting to figure out what it |
50 |
was. Since all the packages you're changing are capable of |
51 |
co-existing there is no reason to switch cold turkey. |
52 |
|
53 |
Now, on a new install or a host I didn't care so much about uptime for |
54 |
I'd probably do it your way, and just revert to a backup. In a |
55 |
production environment where reboots are a concern I'd be working out |
56 |
the procedure on a test host. |
57 |
|
58 |
Oh, yeah, and step 0 is to make a backup... :) |
59 |
|
60 |
-- |
61 |
Rich |