Previously working 3G USB modem no longer works with Manjaro Gnome

If you do - get the latest testing ISO - a stable update is planned to next week - but installing the usb_modeswitch package will likely get you back on track.

I got triggered by the offline part as I realize that a large part of any userbase may have connectivity issues.

If you have the means and the opportunity there is a method which may work well for you.

The method was a result of topic created by another member on doing an offline update and possilby installing new packages Updating an Offline Manjaro Installation.

Techically - instead of using an online mirror - you use a portable mirror. There is a bandwidth overhead when syncing - but the advantage is that your portable mirror will always reflect your system state - thus you can install any package you like - offline.

  • acquire a portable storage of 128G
    • technically it can be a partition on your system but removable is better as it can be used to update other systems as well
  • connect to a network with a stable internet connection

The result was this rsync

#!/bin/sh

#######################################################
####
#### Variables to amend
####
TARGET="/path/to/portable/mirror"
TMP="/tmp/manjaro"
LOCK="/tmp/rsync-manjaro.lock"

SOURCE="rsync://ftp.halifax.rwth-aachen.de/manjaro/"

[ ! -d "${TARGET}" ] && mkdir -p "${TARGET}"
[ ! -d "${TMP}" ] && mkdir -p "${TMP}"

exec 9>"${LOCK}"
flock -n 9 || exit

if ! stty &>/dev/null; then
    QUIET="-q"
fi

##################################################
### 
### This rsync command creates a copy of stable repo
### where symlinks are converted to regular files
### Expect the size to be around 50GB to 80GB
###
##################################################
rsync -rtLv --safe-links \
    --delete-after --progress \
    -h ${QUIET} --timeout=600 --contimeout=300 -p -c \
    --delay-updates --no-motd \
    --exclude="arm*" \
    --exclude="pool" \
    --exclude="testing" \
    --exclude="unstable" \
    --exclude="stable/kde-unstable" \
    --temp-dir="${TMP}" \
    ${SOURCE} \
    "${TARGET}"

rm -f ${LOCK}

And and accompanying script for setting up a local webserver to serve the mirror

#!/usr/bin/env bash
## sample script for updating a remote system with no network
## using a labeled filesystem on a portable medium

## mount using label e.g. ManjaroRepo
sudo mount /dev/disk/by-label/ManjaroRepo /mnt

## start the python http server
python -m http.server -d /mnt 8080 &

## use pacman-mirrors to point pacman to the local mirror
sudo pacman-mirrors -aU http://localhost:8080

## update the system
sudo pacman -Syyu

## optionally reboot the system
#reboot

If you - instead of syncing your system to an online mirror - sync your offline mirror on the portable medium - then sync your system with the portable mirror.