« n'ayant pas de fichier startup pour fluxbox, j'ai mis ce code dans mon .Xinitrc, est-ce correct ? ou dois-je créer un startup ? »
ça dépend des cas.
Si tu n'utilises qu'un seul gestionnaire de fenêtres et que tu es sûr de ne pas changer d'avis dans les 6 prochains mois, c'est juste pareil le .fluxbox/startup et le .xinitrc (note que chez moi c'est un x minuscule, et que ce fichier n'est pas lu par gdm à ma connaissance).
C'est quand même plus propre de mettre ce genre de choses dans un fichier de conf propre à fluxbox.
Sinon, comme je l'ai fait remarqué à deepblue, ceci :
[ "x$GSDPID" == "x" ]
est une HÉRÉSIE. 
C'est sale, moche, et c'est facile de trouver des cas où le test échoue lamentablement. Bref, ce bout là est moisi.
À vrai dire, je n'ai pas compris ce que deepblue voulait te faire faire là, donc j'en discute avec lui et il repostera quelque chose de mieux.