Este é um tópico muito amplo e profundo. Os detalhes também dependem de como a distribuição em particular é montada. Eu posso te dizer tudo sobre como o Slackware funciona internamente, e ele não vai te dizer como adicionar um novo pacote ao Fedora ou ao Ubuntu. Basicamente, você precisa começar com o conhecimento de como a distro funciona, de maneira holística.
O conjunto de habilidades originais que permitiram que as pessoas criassem distros do Linux é a administração do sistema Unix. No dia anterior às distribuições do Linux, você obteria um sistema Unix razoavelmente básico de algum fornecedor, e então teria que instalar um monte de software nele, porque o sistema operacional central não era muito útil por si só, a menos que seu objetivo fosse para escrever outro software. Aqueles que dominam as habilidades envolvidas em trazer tais sistemas para um estado útil foram os administradores de sistemas e desenvolvedores de software.
Hoje em dia, com repositórios de pacotes de copiadora e grandes instalações "padrão", é difícil escolher um ponto de partida. É realmente mais um esforço de equipe, simplesmente devido ao tamanho da coisa. Simplesmente reconstruir todos os pacotes pode levar semanas em uma máquina rápida.
Sugiro que você comece a aprender como criar pacotes para sua distro em particular. Por exemplo, leia o HOWTO do Pacote Debian , ou o site do RPM 5 . Em seguida, construa um pacote ou dois para algum software que você tenha criado a partir da fonte anterior. (E se você ainda não fez isso, você precisa começar por aí!)
Tendo construído alguns pacotes, você saberá como separar, modificar e reconstruir os pacotes existentes. Então você pode começar a aprender como o sistema de instalação do sistema operacional funciona, para que você possa adicionar novos pacotes a ele.
Espere que esse processo de aprendizagem leve semanas, talvez meses.