-   Slackware (
-   -   How to safely rebuild X server (

mattca 12-03-2013 01:37 PM

How to safely rebuild X server
Hi all, I need to rebuild my X server, in an attempt to resolve the issue I'm experiencing in this thread.

I'm not new to installing software from source, but I've never had to update something as integral as the X server. How do I go about doing this without screwing my system up? Do I need to first remove the copy that slackpkg knows about? What steps can I take to ensure that reverting back to slackpkg's copy if needed is simple and reliable?

This is on my work laptop, so I really need to get it back into a working state as quickly as possible.


Edit: Actually, is there a way to unpackage the Xorg package included in Slackware, modify it, then repackage it and install with installpkg? I think that would be the easiest and safest option, if it's possible.

slac-in-the-box 12-03-2013 03:02 PM

One way to rebuild something that was included with slackware, is to use the slackbuild script that you find in the "source" folder in the top level of the slackware tree... usually just replace the source in the build directory with updated source, manually update the version number in the slackbuild script, and then execute the slackbuild script, and use installpkg to install the new package after it is created...

mattca 12-03-2013 03:30 PM

Hi, thanks for the suggestion! After some googling, I discovered the "explodepkg" and "makepkg" commands that should help, but exploding gives me binaries, not source. Your suggestion should get me the rest of the way there. I'll update here if I run into trouble.

mattca 12-04-2013 03:07 PM

Alright, I'd appreciate a sanity check before I take the plunge here.

Here's what I've done:

- Download everything from this url:
- Unpackage the xorg-server source in this file:
- Patch it as needed
- Run this slackbuild script:
- Now I have a series of slackware packages in /tmp/x11-build
- End my X session
- Remove my installed xorg-server package
- Install this xorg-server package:

Does that sound right?

One more question - how do I make sure slackpkg distinguishes between the two packages? Is it enough to rename my new one with something like "-patched", and blacklist the old one?

Any other tips or gotchas I should be aware of?


All times are GMT -5. The time now is 03:17 AM.