Installation guide


You will occasionally see a $ before a command. This is mostly to differentiate the input (what you type), from the output, the computer provides.

Here’s an example:

$ lsblk
NAME          MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
sda             8:0    0 465.8G  0 disk
└─sda1          8:1    0 465.8G  0 part  /media/franz/4e619844-b92a-49bd-8b70-cf934abdc8eb

So the actual command is lsblk (you don’t write $).

On the other hand, if there’s only a command, and no output, we sometimes omit the $ like so:

lsblk

Pre-installation

Before you get started, ready a USB stick with the latest ISO image.

Download pantherx-19-09-2023.iso (1.5GB)
19xzxwk2zi4l2f4lzav2v1vzk52794gv3vb1kgnhc52zx1wk3dc3

Flash with dd

Plugin the USB stick and determine the name:

$ lsblk
NAME          MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
sda             8:0    1  14.9G  0 disk
├─sda1          8:1    1     1G  0 part  /media/franz/GUIX_IMAGE
└─sda2          8:2    1   2.8M  0 part
nvme0n1       259:0    0 953.9G  0 disk
├─nvme0n1p1   259:1    0   549M  0 part  /boot/efi
└─nvme0n1p2   259:2    0 953.3G  0 part
  └─cryptroot 253:0    0 953.3G  0 crypt /

In my case, it’s /dev/sda, so I proceed with copying the ISO to this drive:

$ sudo dd if=pantherx-19-09-2023.iso of=/dev/sda status=progress
Password:
1110499840 bytes (1.1 GB, 1.0 GiB) copied, 284 s, 3.9 MB/s
2169320+0 records in
2169320+0 records out
1110691840 bytes (1.1 GB, 1.0 GiB) copied, 284.985 s, 3.9 MB/s
$ sync

Now un-mount / eject the drive:

sudo umount /dev/sda1

Flash with etcher

If you prefer a GUI tool that runs on your existing OS (Windows, MacOS, other Linux), have a look at etcher.

First steps

Here’s what a typical installation looks like, assuming you’re already connected to the internet (LAN): youtube.com/watch?v=fK2Rx9MKLqw.


Now just plugin the USB stick into the target computer, and boot from it. Most commonly, you can get a boot device selection with F11.

Once you have booted from USB, you will be greeted with “Locale language” selection.

(1) Select your locale

(2) Select your location

Select “Install using the shell based process”.

If you’re connected via LAN cable, you probably already have internet. Skip ahead to installation.

Connect to the Internet

Now that you’re in the command line, it should read “Welcome to the Installation of PantherX OS!”. Before you continue, you need to establish a internet connection. If you are connected with a LAN cable, that might already have happened.

Here’s how you verify whether you’re connected:

$ px-install network-check
------
Welcome to PantherX Installation v0.0.30

For guidance, consult: https://wiki.pantherx.org/Installation-guide
For help, visit https://community.pantherx.org
------

######## RESULT ########
Found 1 suitable network adapters

1. Adapter
Name: enp2s0
State: UP
Address: | IP: 192.168.1.73  Broadcast: 192.168.1.255 | IP: fe80::6e4b:90ff:feed:9578  Broadcast: None

You appear to be online.
Run 'px-install run' to continue with the setup.

One of the listed interfaces, should have a valid IP address. For example 192.168.1.69. If that’s the case, you can proceed to the next step. If not, here’s how you connect:

Either LAN or WLAN must be working before you can proceed. Here’s how you configure either:

Wired Network (LAN)

To configure a wired network run the following command, substituting interface with the name of the wired interface you want to use:

$ ifconfig INTERFACE_NAME up # for ex. enp2s0

Now try to get a IP address:

$ dhclient -v INTERFACE_NAME # for ex. enp2s0

Wireless Network (WLAN)

Try our new px-install wifi-setup, or configure manually:

To configure wireless networking, create a configuration file for the wpa_supplicant configuration tool:

$ nano wpa_supplicant.conf

with the following content:

network={
  ssid="YOUR_WIFI_NAME"
  key_mgmt=SECURITY_STANDARD
  psk="YOUR_WIFI_PASSWORD"
}

once you’re done, this should look roughly like this:

network={
  ssid="MyWirelessNetwork"
  key_mgmt=WPA-PSK
  psk="3295e09f-241b-4a06-a492-f3f3cc95c24d"
}

You can find more examples and options here: wpa_supplicant.conf: Linux man page.

To start the wireless service, and run it on interface in the background:

$ wpa_supplicant -c wpa_supplicant.conf -i INTERFACE_NAME -B

# Example
$ wpa_supplicant -c wpa_supplicant.conf -i enp2s0 -B

Note If this doesn’t work, you might want to try to check your network with rfkill:

$ rfkill
ID TYPE      DEVICE                   SOFT      HARD
 0 bluetooth tpacpi_bluetooth_sw unblocked unblocked
 1 bluetooth hci0                unblocked unblocked
 2 wlan      phy0                unblocked unblocked

If the wlan interface is blocked, you can unblock it with rfkill unblock wlan.

Now try to get a IP address:

$ dhclient -v INTERFACE_NAME

# Example
$ dhclient -v wlan0

SSH access (OPTIONAL)

If you want to continue with the installation remotely, load the SSH server and set a root password:

$ herd start ssh-daemon
Service ssh-daemon has been started.
$ passwd
New Password:
Retype new password:
passwd: password updated successfully

Now simply connect via SSH from another computer: ssh root@192.168.1.67.

Installation

It is highly recommended to download and run the latest version of the installer, instead of the included version: Download and run the latest installer

We have come-up with a simple installer that automates all steps. You can go ahead with the defaults (username: pantherx) with:

px-install

or customize username, password and so on with:

px-install run

In the latest release, you can select from 4 desktop environments:

  • XFCE
  • MATE
  • Gnome
  • LXQt

Once the installation has completed, it should read something like this:

guix system: bootloader successfully installed on /dev/sda

Now simply reboot with

reboot

Post-installation

(1) Set a new password

sudo su - root
passwd # for root
passwd panther # for panther user (or your own username)

If you did not set a password, the default is pantherx.

(2) Update the system

You’ll want to update both system and user profile. To speed this up by 2x, you can usually do this in parralel, in two tabs (your user, root):

px update apply

(3) Reboot and enjoy

Have a great time on PantherX OS

Notes:

PantherX & (unofficial) GNU Guix Wiki.

Last update: 2023-12-24 22:58:50 +0000 | Apache-2.0

Inspired by the excellent Arch Linux Wiki