]> git.ipfire.org Git - people/teissler/ipfire-2.x.git/blobdiff - src/install+setup/install/main.c
Removed also the pata mkinitcpio hook if install on hda
[people/teissler/ipfire-2.x.git] / src / install+setup / install / main.c
index 83b1d4caf0fe55821277969f62aba0d5c1705d7b..4cd8ffd07353d151391819e019ca29f532b076d4 100644 (file)
@@ -37,7 +37,7 @@ int main(int argc, char *argv[])
        char *shortlangnames[] = { "de", "en", NULL };
        char **langtrs[] = { de_tr, en_tr, NULL };
        char hdletter;
-       char harddrive[11], sourcedrive[5];     /* Device holder. */
+       char harddrive[30], sourcedrive[5];     /* Device holder. */
        struct devparams hdparams, cdromparams; /* Params for CDROM and HD */
        int rc = 0;
        char commandstring[STRING_SIZE];
@@ -200,7 +200,7 @@ int main(int argc, char *argv[])
                errorbox(ctr[TR_NO_HARDDISK]);
                goto EXIT;
        }
-       fgets(harddrive, 11, handle);
+       fgets(harddrive, 30, handle);
        fclose(handle);
                        
        /* load unattended configuration */
@@ -501,6 +501,14 @@ int main(int argc, char *argv[])
                replace("/harddisk/boot/grub/grub.conf", "MOUNT", "ro");
        }
 
+       /* mkinitcpio has a problem if ide and pata are included */
+       if ( scsi_disk==1 ) {
+           /* Remove the ide hook if we install sda */
+           replace("/harddisk/etc/mkinitcpio.conf", " ide ", " ");
+       } else {
+           /* Remove the pata hook if we install hda */
+           replace("/harddisk/etc/mkinitcpio.conf", " pata ", " ");
+       }
        /* Going to make our initrd... */
        snprintf(commandstring, STRING_SIZE, "/sbin/chroot /harddisk /sbin/mkinitcpio -g /boot/ipfirerd.img -k %s-ipfire", KERNEL_VERSION);
        runcommandwithstatus(commandstring, ctr[TR_BUILDING_INITRD]);