How We Made Shift 0.6 Gnome


Recommended Posts

Alright, it was asked for, so here it is. Shift was split in half for developing 0.6, so I was doing Gnome, and CrimsonRedMk was doing KDE and Lite (thanks, by the way :p). I'll tell you how I got Shift 0.6 Gnome made.

Get an awesome customizing program

For most of the time I was making Shift, I was inside a program called Reconstructor, even though most of the work was done via the command line. What's good about Reconstructor is that it takes a Ubuntu or Ubuntu-compatible ISO, and splits it into 3 parts: remaster (which is the actual bootable CD), root (the root of the filesystem, this is a full version of Ubuntu or Shift that will eventually end up on someone's system), and intrid (I didn't really touch this, but it is the initial ramdisk. Don't worry about it, we'll tell you when it's useful).

So, we loaded the ISO into Reconstructor, and we were greeted with a plethora of options. What did we do now?

Remove the stuff no one wants, add the stuff everyone wants

Our next step was to add and remove some packages. The best way to do that is by using the command line and apt-get. Another useful thing about reconstructor is that there is a little terminal icon at the bottom left of the window, which gives you command line access to a working Shift system. If you type in apt-get install packagename, packagename will be installed into the system, and added to the menus (if necessary).

It's the same for apt-get remove, except in reverse (things get taken out of menus, the apps get removed, etc.).

Another thing we did was an apt-get dist-upgrade. This will upgrade the entire system to the latest stable packages, but if there are instabilities with the system, this is probably the root of the problem. We looked at it from the perspective that this is not a stable distro yet, and we have time to fix the bugs, so we might as well be shipping everything up to date.

And finally, what are we supposed to do with all of those extra package files that were just downloaded? They've been installed, and we don't really have much use for them anymore, so we run an apt-get clean. If you have a 900MB ISO at one point, as I can tell you I did, it's because you forgot that single command :p .

Get everything branded

So, you've got a system that's working pretty well now, but it's not branded! How dare Ubuntu (or Shift) take your work and put their branding all over it? We'll just have to fight back.

But truth be told, branding can be a pain. Reconstructor helps, but you actually have to replace everything with a Ubuntu logo or name on it with the name of your distro, because of the trademark, and sometimes files hide in places they shouldn't. Shift is also a registered trademark, and thus if you are basing your distribution off of it, you need to have your own distribution name (unless you're working on Shift and not a derivative).

So, to get the easy stuff out of the way. There is a tab at the top of Reconstructor called Gnome, which is where you can add a theme, wallpaper, icon set, and set the default configuration for such things. There, easy part done. But there's still pesky little Ubuntu icons everywhere!

Go through /usr/icons/, and replace every single Ubutnu- or Shift-related icon with an icon for your distro. Yeah, it's a pain, I know. There's also some in /usr/pixmaps/ that you should replace, like the icon for Ubiquity (the Ubuntu/Shift installer). And when you're done, delete the icon cache and run a gtk-update-icon-cache on every icon set you've modified, (if you've added an icon set, run a gtk-update-icon-cache on that, too). This will change that little, stupid, irritating icon at the top left of your screen, next to the Applications menu. I spent 5 hours straight trying to change that from Ubuntu to Shift, at one point getting mad at the Ubuntu developers themselves in their IRC room (sorry guys! :p).

Useful tip: in your own terminal (not the terminal of the distro you're developing), run a sudo nautilus. The root, remaster, and intrid folders have big fancy permissions on them, but using that command, you can drag files in and out of the ISO using a nice file navigator. You need to be root (or elevated permissions a la sudo) to change things within those folders.

Config files

This is more of a pasteboard for me. When I find a config file, I honestly don't want to come in and explain it to everyone, but I want to remember where it is, and might as well share :p . So the following is useful links, commands, files, etc.

http://library.gnome.org/admin/system-admin-guide/2.20/

/usr/share/gconf/defaults -- Default gconf stuff.

gconftool-2 --dump <a directory in gconf> -- Useful for exporting things like a panel configuration

update-gconf-defaults -- writes files in /usr/share/gconf/defaults to a single, default gconf structure.

/etc/skel/ -- the default home folder for a user.

/etc/lsb-release is a text file that also needs to be changed. We recommend only changing the description, as the rest is probably still a pretty accurate description of your distro for programs that want to know.

Conclusion

You should also be clicking Apply on Reconstructor after you change anything within the interface (not from the Terminal, since that actually updates things as soon as you say "Do this"). You want to click Next after hitting Apply one last time, and name your distro, your ISO, etc. And now, you wait. And wait. And wait. And wait. And wait. And wait. And then you have an ISO sitting there for you to burn to a CD, or run ion a virtual machine. Congratulations, you just made a Linux distribution.

Thanks to the entire Shift Linux team, especially Barney, CrimsonRedMk, and Mephistopheles, and anyone who helped me out at some point in #neowin on irc.neowin.net or #ubuntu or its other channels on irc.ubuntu.com.

Edited by simon360
Link to comment
https://www.neowin.net/forum/topic/616205-how-we-made-shift-06-gnome/
Share on other sites

Cool guide! Please do post your guide to the config files when you get a chance.

I thought you went with UCK as your GUI tool. Do you think Reconstructor is better?

Well, I did most things via Nautilus and the command line. I tried UCK at one point, but it's more of a wizard than it is a tool iirc, and Reconstructor eflt better to me. Really, it's all about what the user likes more. I should have a link to UCK in there anyway...

Thanks for the guide.

Reconstructor only supports Gnome customization?

No, it also supports KDE, but I haven't worked on Shift KDE. I'm writing this purely from the perspective of a Gnome developer. You should be able to adapt most things in here to KDE.

Well, I did most things via Nautilus and the command line. I tried UCK at one point, but it's more of a wizard than it is a tool iirc, and Reconstructor eflt better to me. Really, it's all about what the user likes more. I should have a link to UCK in there anyway...

I'm actually using both Reconstructor and UCK to work on a live 'test' DVD with all the stuff (including nonfree codecs, etc) that I want. The reason for both is that UCK lets you add packages via Synaptics, so if you don't know the name of the package then it's easier (I think) to find it that way. Reconstructor is nicer in other ways I think.

The problem is that you've got to remake the ISO every time you leave one to start the other. Anyway, great guide!

  • 3 weeks later...
  • 2 weeks later...
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Never used the G7 Pro, but I've never had a good experience with that style of d-pad and fighting games.
    • And I just bought a seat cushion for my mesh chair. The chair feels nice but the first time I sat in it with boxers, I realized I don't like the feel of mesh on my legs. 😂
    • "This Dell 27 inch 4K 120Hz IPS monitor is really cheap after a very long time" ... Lol.
    • This Dell 27 inch 4K 120Hz IPS monitor is really cheap after a very long time by Sayan Sen Recently we covered a really good deal on an AMD RX 9070 three-fan model that's available at slightly above its MSRP. If you are looking for a GPU for 1440p gaming that's around the performance of the Nvidia RTX 5070 you should most definitely check it out. Let's say that you are looking for a monitor to pair that up with too. The Samsung 49" G9 curved QD-OLED superultrawide is a good option that can provide an immersive experience. However despite being a very good deal currently (at $855), it may seem unaffordable to you, or you may simply not want to spend as much on a monitor. In that case Dell's S2725QS can be a very good option as it's on sale at the moment for its lowest price in over six months (purchase link under the specs table down below). The big highlight of the Dell S2725QS is its 27-inch IPS panel with a 3840 x 2160 (4K UHD) resolution, offering a high pixel density that can make text appear sharper while also providing plenty of screen space for productivity and media consumption. The display supports a refresh rate of up to 120Hz through both HDMI and DisplayPort, making it suitable not only for everyday desktop use but also for smoother gaming and scrolling. AMD FreeSync Premium support is included as well, helping reduce screen tearing during gaming sessions. The screen has fairly good brightness and color accuracy so you can use it for general work purpose, though photo/video editing is probably not going to be the best match for this. The technical specs of the Dell S2725QS are given in the table below: Specification Value Viewable Screen Size 27 in (68.58 cm) Screen Mode 4K UHD Maximum Resolution 3840 × 2160 Maximum Preset Resolution 3840 × 2160 @ 120 Hz Standard Refresh Rate 120 Hz Panel Technology In-plane Switching (IPS) Backlight Technology LED Edgelight System Pixel Density 163 PPI Response Time 8 ms GTG, 5 ms GTG, 4 ms GTG Horizontal Viewing Angle 178° Vertical Viewing Angle 178° Brightness 350 cd/m² (nits) Native Contrast Ratio 1500:1 Color Support 1.07 Billion Colors Color Gamut 99% sRGB (CIE 1931) Adaptive Sync AMD FreeSync Premium HDCP Support Yes Mount Type Panel Mount VESA Mount 100 × 100 mm Maximum Height Adjustment 13 cm Tilt -5° to 21° Swivel -30° to 30° Pivot ±90° Stand Adjustments Tilt, Swivel, Height, Pivot Glass Hardness 3H Horizontal Frequency 27–270 kHz (DisplayPort 1.4 / HDMI 2.1) Vertical Frequency 48–120 Hz (DisplayPort 1.4 / HDMI 2.1) Video Inputs 2 × HDMI 2.1 (HDCP 1.4 & 2.3), 1 × DisplayPort 1.4 (HDCP 1.4 & 2.3) Operating Temperature 0°C to 40°C Storage Temperature -20°C to 60°C Operating Humidity 10%–80% (Non-condensing) Storage Humidity 5%–95% (Non-condensing) Get it at the link below: Dell S2725QS 27-inch 4K 120Hz IPS monitor: $218.49 (Sold and Shipped by Amazon US) (Was: $280) Good to know This Amazon deal is U.S. specific, and not available in other regions unless specified. We only use first-party seller links (at the time of article publishing); ensure that you purchase from a first-party seller link only. Check out Today's Deals on Amazon | or our recent tech deals. Become a Prime member (for Students or SNAP) via Neowin Get Prime Access - Prime for half price (for qualifying Medicaid, EBT, SNAP) Subscribe to Prime Video, Audible Plus, Music Unlimited or Kindle Unlimited via Neowin As an Amazon Associate, we earn from qualifying purchases
  • Recent Achievements

    • Conversation Starter
      jessse3334 earned a badge
      Conversation Starter
    • Reacting Well
      JuvenileDelinquent earned a badge
      Reacting Well
    • One Month Later
      Excellence2025 earned a badge
      One Month Later
    • Week One Done
      Excellence2025 earned a badge
      Week One Done
    • Week One Done
      flexorcist earned a badge
      Week One Done
  • Popular Contributors

    1. 1
      +primortal
      498
    2. 2
      +Edouard
      243
    3. 3
      PsYcHoKiLLa
      152
    4. 4
      Steven P.
      84
    5. 5
      macoman
      64
  • Tell a friend

    Love Neowin? Tell a friend!