#!/bin/sh # This program is free software: you can redistribute it and/or modify it under # the terms of the GNU Affero General Public License as published by the Free # Software Foundation, either version 3 of the License, or (at your option) any # later version. # # This program is distributed in the hope that it will be useful, but WITHOUT # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more # details. main() { wrapped="${0##*/}" etcfile="$HOME/.local/etc/wrapper.d/$wrapped.rc" if [ ! -f "$etcfile" ] then printf "No configuration for %s found at %s\n" \ "$wrapped" \ "$etcfile" \ >&2 exit 3 fi . "$etcfile" if [ -z "$WRAPPER_BINS" ] then printf "No WRAPPER_BINS specified in %s\n" "$etcfile" >&2 exit 4 fi for bin in $WRAPPER_BINS do [ -x "$bin" ] || continue if [ -n "$FIREJAIL_PROFILE" ] then exec firejail --profile="$FIREJAIL_PROFILE" -- \ "$bin" $WRAPPER_OPTS "$@" fi exec "$bin" $WRAPPER_OPTS "$@" done printf "No underlying executable found for %s:\n" "$wrapped" >&2 for bin in $WRAPPER_BINS do printf "\t%s\n" "$bin" >&2 done } main "$@"