#!/usr/bin/env bash
# Unix-style file installer - does one thing well
set -e

install_files() {
    local source_dir="${1:-.}"
    local dest_dir="${2:-/etc/nixos}"

    # Validate source
    [[ -d "$source_dir" ]] || {
        echo "Source directory '$source_dir' not found" >&2
        exit 1
    }

    # Create destination
    sudo mkdir -p "$dest_dir"

    # Copy files
    sudo cp -r "$source_dir"/* "$dest_dir"/

    # Set proper permissions
    sudo chown -R root:root "$dest_dir"
    sudo chmod 755 "$dest_dir"

    [[ "${OMNIXY_QUIET:-}" != "1" ]] && echo "Files installed to $dest_dir"
}

main() {
    case "${1:-}" in
        --help|-h)
            echo "Usage: omnixy-install-files [source-dir] [dest-dir]"
            echo "Copies configuration files from source to destination"
            echo "Default: current directory to /etc/nixos"
            exit 0
            ;;
        *)
            install_files "$1" "$2"
            ;;
    esac
}

main "$@"