Skip to main content

Installing Packages on Archie

# Offline Installation of `<package>`

## Overview
This guide helps package and install `<package>` on an offline machine. It includes copying binaries, dependencies, and setting up installation scripts.

---

## Steps

```bash
# 1. Check Dependencies
# Find all dependencies for <package>
ldd /usr/bin/<package>

# 2. Package Required Files
# Create a directory to store <package> and its dependencies
mkdir package_offline_package
cp /usr/bin/<package> package_offline_package/
cp /usr/share/man/man1/<package>.1.gz package_offline_package/

# Copy the shared libraries listed by ldd
ldd /usr/bin/<package> | awk '{print $3}' | xargs -I '{}' cp -v '{}' package_offline_package/

# 3. Create Installation Script
# Create an install script in the package_offline_package directory
cat << 'EOF' > package_offline_package/install_package.sh
#!/bin/bash

# Copy <package> binary
mkdir -p /usr/bin/
cp <package> /usr/bin/

# Copy man page
mkdir -p /usr/share/man/man1/
cp <package>.1.gz /usr/share/man/man1/

# Copy dependencies
cp -v ./* /lib/ 2>/dev/null || cp -v ./* /usr/lib/ 2>/dev/null

# Update shared library cache
ldconfig
echo "<package> installed successfully!"
EOF

chmod +x package_offline_package/install_package.sh

# 4. Compress the Package
# Create a tarball of the directory
tar -czvf package_offline_package.tar.gz package_offline_package/

# 5. Transfer to Offline Machine
# Use a USB drive or other methods to move package_offline_package.tar.gz to the offline machine.

# 6. Install on Offline Machine
# On the offline machine:
# Extract the tarball
tar -xzvf package_offline_package.tar.gz

# Run the installation script
cd package_offline_package
sudo ./install_package.sh