A melhor maneira é usar o PackageKit. Ele funcionará tanto no Ubuntu quanto no Fedora.
Aqui está um exemplo de como usar isso: link
Estou escrevendo um aplicativo (digamos, example_1.0.rpm) que é hospedado externamente (em example.com) e este aplicativo tenta se atualizar em cada inicialização sempre que uma nova versão estiver disponível.
Minha abordagem:
Esta abordagem funciona bem no Ubuntu 16.04 (com as atualizações mais recentes em 6/7/2016), mas o Fedora 23 tem o problema mencionado abaixo.
Perguntas:
A melhor maneira é usar o PackageKit. Ele funcionará tanto no Ubuntu quanto no Fedora.
Aqui está um exemplo de como usar isso: link