Gurom, зачем нам велосипеды? Их и так много развелось.
sudo apt-get install synaptic
И юзер сам выберет, что ему надо. А вот для тех кому надо на 100 компов ставить, те сами скрипт напишут.
И вообще, код на python для простых юзеров не ясен. Надо делать из списка пакетов в обычном текстовом файле, а как дополнительную возможность представляйте функционал для выбора пакетов галочками из репозитория, как в Synaptic, иначе скрипт совсем бесполезен. Если есть возможность формировать list.txt то да, скрипт полезен, а в том состоянии в котором он сейчас он совсем не нужен ИМХО. Могу помочь доделать, но скрипт будет на BASH, а вот с GUI (желательно псевдографика в терминале) я особо не помогу, так как сам такое не делал, но попробовать для тренировки стоит.