Building Shift


Recommended Posts

This is the self-written guide used to make Shift Linux (Arch-based). This guide covers everything you'll need to make your own Shift Linux-based Live CD. This process has only been tested on Arch Linux (x86). The Arch Linux Beginners Guide is also useful if you've never set up an Arch system before.

Before starting any of this, however, download the following. It's based on Arch Linux 2009.02-RC1, but I've removed some boot files. I don't recommend using the official ISO because the overlay restricts X usage and is a hassle.

Download either:

x86

x86_64 (Not tested, but should, in theory, work, although you need to do this process on a 64-bit Arch Linux installation. Spin a 64-bit Shift with this.)

Extract either of those into ~/Desktop/Shift/ISO/

You'll also need squashfs-tools. Use "pacman -S squashfs-tools" to install.

NOTES:
			~/Desktop/Shift/MNT = empty directory to mount the sqfs
			~/Desktop/Shift/FS = extracted sqfs
			~/Desktop/Shift/ISO = extracted ISO file

	 =====================================================
	 To decompress a .sqfs:
	 NOTE: DO NOT USE UNSQUASHFS!!! EVER!!!
	 =====================================================

	 sudo modprobe loop #Arch doesn't do this on boot, you can add it to MODULES in rc.conf though.
	 sudo mount -t squashfs -o loop ~/Desktop/Shift/ISO/root-image.sqfs ~/Desktop/Shift/MNT/
	 sudo cp -a ~/Desktop/Shift/MNT/* ~/Desktop/Shift/FS/
	 sudo umount ~/Desktop/Shift/MNT/

	 =====================================================
	 Preparing to chroot:
	 =====================================================

	 sudo cp /etc/resolv.conf ~/Desktop/Shift/FS/etc/
	 sudo mount --bind /dev/ ~/Desktop/Shift/FS/dev/
	 sudo chroot ~/Desktop/Shift/FS/
	 mount -t proc none /proc
	 mount -t sysfs none /sys

	 =====================================================
	 Useful Things to do in a chroot:
	 =====================================================
	 nano /etc/pacman.d/mirrorlist #Move a different repo up, Arch's are throttled
	 nano /etc/pacman.conf #Add any external repos here
	 pacman -Syyu #Updates everything
	 useradd -m -G audio,video,storage,lp,optical,power,wheel,floppy shift 
	 passwd root #Set as "root"
	 passwd shift #Set as "shift"
	 pacman -S xorg xorg-video-drivers xorg-input-drivers hal dbus sudo cups hwd unzip #And more...
	 EDITOR=nano visudo #Uncomment %wheel  ALL=(ALL) ALL, enabling sudo for everyone in "wheel" group.
	 nano /etc/rc.conf #Set hostname, add dbus and hal to DAEMONS for X to work. Look at Arch Beginners Guide for more.

	 =====================================================
	 After Finishing Modding in chroot:
	 =====================================================
	 pacman -Scc #Yes, Yes - cleans out downloaded packages
	 rm -rf /tmp/* #Deletes temp files
	 rm /etc/resolv.conf #Remove your network configuration
	 umount /proc
	 umount /sys
	 exit
	 sudo umount ~/Desktop/Shift/FS/dev/

	 =====================================================
	 Making a .sqfs:
	 =====================================================

	 sudo rm ~/Desktop/Shift/ISO/root-image.sqfs #Remove old one first, this is necessary!
	 sudo mksquashfs ~/Desktop/Shift/FS/ ~/Desktop/Shift/ISO/root-image.sqfs

	 =====================================================
	 Making the ISO (GRUB-booting!):
	 NOTE: In order for boot to work, you need to cd into the ISO root directory to run this.
	 =====================================================

	 cd ~/Desktop/Shift/ISO/
	 sudo mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o ~/Desktop/yourshift.iso ~/Desktop/Shift/ISO/

Edited by CrimsonRedMk
Link to comment
https://www.neowin.net/forum/topic/707018-building-shift/
Share on other sites

A simple bash script would probably do, I had one back when we were using Ubuntu...

A GUI would probably be overkill for us. While a bash script would be inconvenient for regular users, we want to save time, and a GUI takes more time than something that can run directly from the terminal. Don't underestimate the power of bash!

Just so we're clear, this is more for developers than for users. We're in the very early steps of building this.

Link to comment
https://www.neowin.net/forum/topic/707018-building-shift/#findComment-590238620
Share on other sites

A GUI would probably be overkill for us. While a bash script would be inconvenient for regular users, we want to save time, and a GUI takes more time than something that can run directly from the terminal. Don't underestimate the power of bash!

Was thinking it could be something like this:

post-52106-1228678444.jpg

It's similar to a bash script but with more advanced options. It could read a configuration file with all the instructions needed, with that file having the possibility of being easily edited.

I sincerely believe a good building tool could have its place in Shift, saving time to developers and allowing them to focus on making the real stuff. :)

Link to comment
https://www.neowin.net/forum/topic/707018-building-shift/#findComment-590238790
Share on other sites

I have time and I'm willing to do it.

It took a few minutes to make that interface, it's written in python and the interface was done with the QT libs.

Shift comes with PyGTK right? It would be great if Shift had QT, but if it can't will just have to stick with GTK, which I'm currently in the process of becoming familiar with.

I can do bash too. :)

Link to comment
https://www.neowin.net/forum/topic/707018-building-shift/#findComment-590238916
Share on other sites

  • 3 weeks later...
  • 3 weeks later...

What about implementing everuthing with larch and the Arch Linux Install Framework?

larch:

larch is a collection of scripts designed around the creation and use of live CD/DVD/USB-stick versions of Arch Linux.

One design aim was easy customization, so that even relatively inexperienced users could build personalized live CDs (etc.), containing whatever packages they wanted and with their own personal configurations. The resulting medium should also be usable for installation purposes, so that one has a customized Arch Linux installation/rescue medium. As the content can be chosen freely, a comfortable working environment is possible - in contrast to the rather Spartan standard Arch installation CD.

larch also offers a flexible approach to building your live media. You can use 'profiles' to determine what gets installed, and how it is configured. The advantage of this method is that all your specifications are kept together in a folder which can be used to rebuild the same or a similar system at a later date. Alternatively you can do a normal Arch Linux installation (if there is such a thing!) and then make a live medium from this. You can even 'livify' your existing installation (though it might be worth tidying it up a bit first ...).

http://larch.berlios.de/doc/index.html

AIF:

The Arch Linux Installation Framework, which is a new installed for Arch systems, has these goals in mind:

Make all code modular, reusable etc. Everyone should be able to add/change/remove change certain aspects of an installation procedure easily or build custom installation relying on existing code where appropriate.

http://dieter.plaetinck.be/AIF_the_brand_n...ation_Framework

We could use AIF as the default installer since it's modular andd will let us make any of the changes we might need to it, and we should use larch to rapidly deploy new releases without killing ourselves with custom ISO tools.

Link to comment
https://www.neowin.net/forum/topic/707018-building-shift/#findComment-590459630
Share on other sites

  • 3 weeks later...
This is the self-written guide used to make Shift Linux (Arch-based). This guide covers everything you'll need to make your own Shift Linux-based Live CD. This process has only been tested on Arch Linux (x86). The Arch Linux Beginners Guide is also useful if you've never set up an Arch system before.

Before starting any of this, however, download the following. It's based on Arch Linux 2009.02-RC1, but I've removed some boot files. I don't recommend using the official ISO because the overlay restricts X usage and is a hassle.

Download either:

x86

x86_64 (Not tested, but should, in theory, work, although you need to do this process on a 64-bit Arch Linux installation. Spin a 64-bit Shift with this.)

Extract either of those into ~/Desktop/Shift/ISO/

You'll also need squashfs-tools. Use "pacman -S squashfs-tools" to install.

NOTES:
			~/Desktop/Shift/MNT = empty directory to mount the sqfs
			~/Desktop/Shift/FS = extracted sqfs
			~/Desktop/Shift/ISO = extracted ISO file

	 =====================================================
	 To decompress a .sqfs:
	 NOTE: DO NOT USE UNSQUASHFS!!! EVER!!!
	 =====================================================

	 sudo modprobe loop #Arch doesn't do this on boot, you can add it to MODULES in rc.conf though.
	 sudo mount -t squashfs -o loop ~/Desktop/Shift/ISO/root-image.sqfs ~/Desktop/Shift/MNT/
	 sudo cp -a ~/Desktop/Shift/MNT/* ~/Desktop/Shift/FS/
	 sudo umount ~/Desktop/Shift/MNT/

	 =====================================================
	 Preparing to chroot:
	 =====================================================

	 sudo cp /etc/resolv.conf ~/Desktop/Shift/FS/etc/
	 sudo mount --bind /dev/ ~/Desktop/Shift/FS/dev/
	 sudo chroot ~/Desktop/Shift/FS/
	 mount -t proc none /proc
	 mount -t sysfs none /sys

	 =====================================================
	 Useful Things to do in a chroot:
	 =====================================================
	 nano /etc/pacman.d/mirrorlist #Move a different repo up, Arch's are throttled
	 nano /etc/pacman.conf #Add any external repos here
	 pacman -Syyu #Updates everything
	 useradd -m -G audio,video,storage,lp,optical,power,wheel,floppy shift 
	 passwd root #Set as "root"
	 passwd shift #Set as "shift"
	 pacman -S xorg xorg-video-drivers xorg-input-drivers hal dbus sudo cups hwd unzip #And more...
	 EDITOR=nano visudo #Uncomment %wheel  ALL=(ALL) ALL, enabling sudo for everyone in "wheel" group.
	 nano /etc/rc.conf #Set hostname, add dbus and hal to DAEMONS for X to work. Look at Arch Beginners Guide for more.

	 =====================================================
	 After Finishing Modding in chroot:
	 =====================================================
	 pacman -Scc #Yes, Yes - cleans out downloaded packages
	 rm -rf /tmp/* #Deletes temp files
	 rm /etc/resolv.conf #Remove your network configuration
	 umount /proc
	 umount /sys
	 exit
	 sudo umount ~/Desktop/Shift/FS/dev/

	 =====================================================
	 Making a .sqfs:
	 =====================================================

	 sudo rm ~/Desktop/Shift/ISO/root-image.sqfs #Remove old one first, this is necessary!
	 sudo mksquashfs ~/Desktop/Shift/FS/ ~/Desktop/Shift/ISO/root-image.sqfs

	 =====================================================
	 Making the ISO (GRUB-booting!):
	 NOTE: In order for boot to work, you need to cd into the ISO root directory to run this.
	 =====================================================

	 cd ~/Desktop/Shift/ISO/
	 sudo mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o ~/Desktop/yourshift.iso ~/Desktop/Shift/ISO/

So we are meant to install this and then make another ISO from it?

I don't understand.

Also, does this has working Live-X11 automagick configs? And base apps or something?

We should begin a thread asking what features to include on Shift so we can begin working in them...

Link to comment
https://www.neowin.net/forum/topic/707018-building-shift/#findComment-590548250
Share on other sites

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Rescind the stupid "Show more options" in context menus and just give us the full menu instead of adding more steps to get to what we want. The "simpler by default" makes me think they'll go in the opposite direction. Every context menu should have a configure button so you can pick and choose what options should be shown, I know you can do that with some registry fu but that shouldn't be required.
    • This is why competition must exist. Finally, pressure is mounting on Microsoft to move in the right direction.
    • Microsoft is making Windows 11's context menus faster, simpler, and configurable by Taras Buria Five years ago, Windows 11 introduced redesigned context menus, offering users a simpler, more modern design. However, customers quickly discovered that the new menus leave a lot to be desired. Many are unhappy with performance (they are really slow), while others dislike the double-layed design, where many options are hidden behind the "Show more options" button. In addition, over the years, menus became cluttered and overloaded. While Microsoft has already fixed plenty of pain points across Windows 11, context menus remain mostly unchanged. Fortunately, Microsoft is finally listening. Marcus Ash, Design and Research Lead for Windows at Microsoft, responded to a tweet on X, confirming that the company is working on fixing Windows 11's context menus. Reworked context menus are supposed to be faster, simpler by default, and "configurable to what you use most." What the latter means is unknown, just like whether Microsoft plans to keep the classic menu alongside the modern one, but according to Marcus, the wait should finally be over soon, as he promised to "share our approach soon." Improved context menus will most likely appear first in Windows 11 preview builds in the Experimental Channel. While we wait for Microsoft to release them, you can try fixing context menus on your PC with a simple tool called Windows 11 Context Menu Manager. It lets you disable entries you do not need, not only cleaning up context menus, but also making them significantly faster. Microsoft has already improved Windows 11's Start menu and taskbar, so hopefully it will address user criticism of the context menu as well. Stay tuned for new Windows 11 preview builds, which usually arrive every Friday.
    • If the drive/memory is soldered to the board, which it probably is, then it's a no from me
    • Driver Genius 25.0.0.143 by Razvan Serea Driver Genius is a professional driver management tool features both driver management and hardware diagnostics. Driver Genius provides such practical functions as driver backup, restoration, update and removal for computer users. If you often reinstall your operating system, you may not forget such painful experiences of searching all around for all kinds of drivers. If unfortunately you have lost your driver CD, the search will be more troublesome and time-consuming. Driver Genius can automatically find drivers for a device when the system can't find a driver for it. It can recognize the name and vendor's information of the device, and directly provide download URL for the required driver. Driver Genius also supports online updates for drivers of existing hardware devices. Driver Genius customers can obtain information for latest drivers by Driver Genius's LiveUpdate program, which can synchronize to the database on Driver Genius site. Features at a glance: Find the latest drivers for your computer. One click to update all drivers silently. Automatically install driver updates silently. Make your drivers are always up to date. New rollback driver design for safer driver update. Free to backup all drivers now! Package all drivers to an executable auto installer. One click to restore all drivers. Remove invalid or useless drivers/devices, improve system performance and stability. New system information tool. Detailed hardware inventory. Hardware temperature monitor. Protect your CPU, GPU and HDD. New system transfer assistant. Upgrade/degrade your windows system easily. New SSD Speeder. Improve your disk performance and reliability. New System booster provides over 90 optimization options that make your computer run faster and smoother. New System Cleanup can help you to clean up the temporary files and cache files or other junk files in system. Driver Genius 25.0.0.143 changelog: Enhanced detection for Windows Runtime components. Update the hardware detection component to support more new hardware. Update the compression component to address security issues. Download: Driver Genius 25.0.0.143 | 20.7 MB (Shareware) View: Driver Genius Home Page | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
  • Recent Achievements

    • One Month Later
      Carru_123 earned a badge
      One Month Later
    • Week One Done
      Dr Jared Dental Studio earned a badge
      Week One Done
    • Week One Done
      RG INVESTMENT GROUP earned a badge
      Week One Done
    • Very Popular
      The Norwegian Drone Pilot earned a badge
      Very Popular
    • Very Popular
      s0nic69 earned a badge
      Very Popular
  • Popular Contributors

    1. 1
      +primortal
      472
    2. 2
      PsYcHoKiLLa
      250
    3. 3
      Skyfrog
      79
    4. 4
      FloatingFatMan
      67
    5. 5
      Michael Scrip
      60
  • Tell a friend

    Love Neowin? Tell a friend!