Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalwareutils.git;a=commitdiff;h=612889fb1d4b127c152e8a6839445cf10897ccd5

commit 612889fb1d4b127c152e8a6839445cf10897ccd5
Author: James Buren <[email protected]>
Date:   Tue Jul 3 21:21:56 2012 -0500

libfwgrubconfig: redesign make_config to chroot before executing itself

diff --git a/libfwgrubconfig/libfwgrubconfig.c 
b/libfwgrubconfig/libfwgrubconfig.c
index 13284d9..860db16 100644
--- a/libfwgrubconfig/libfwgrubconfig.c
+++ b/libfwgrubconfig/libfwgrubconfig.c
@@ -251,25 +251,17 @@ int fwgrub_install(const char *root,enum 
fwgrub_install_mode mode)

return 0;
}
-#if 0
-               case FWGRUB_INSTALL_EFI:
-                       strcat(cmd,"--root-directory=/boot/efi 
--bootloader-id=frugalware");
-                       if(!stat("/boot/efi",&st) && !S_ISDIR(st.st_mode))
-                               return 1;
-                       else if(mkdir("/boot/efi",0755))
-                               return 1;
-                       break;
-#endif

return 1;
}

/** Make a grub2 configuration file
+ * @param root directory to chroot to before generating grub config
* @return 0 on succcess, 1 on error
*/
-int fwgrub_make_config(void)
+int fwgrub_make_config(const char *root)
{
-       return system("grub-mkconfig -o /boot/grub/grub.cfg > " FWGRUB_LOGDEV " 
2>&1") ? 1 : 0;
+       return fwutil_system_chroot(root,"grub-mkconfig -o /boot/grub/grub.cfg 
> " FWGRUB_LOGDEV " 2>&1");
}

/** @} */
diff --git a/libfwgrubconfig/libfwgrubconfig.h 
b/libfwgrubconfig/libfwgrubconfig.h
index 353176e..c5a49fe 100644
--- a/libfwgrubconfig/libfwgrubconfig.h
+++ b/libfwgrubconfig/libfwgrubconfig.h
@@ -21,11 +21,8 @@

enum fwgrub_install_mode
{
-       FWGRUB_INSTALL_MBR,
-#if 0
-       FWGRUB_INSTALL_EFI
-#endif
+       FWGRUB_INSTALL_MBR
};

int fwgrub_install(const char *root,enum fwgrub_install_mode mode);
-int fwgrub_make_config(void);
+int fwgrub_make_config(const char *root);
_______________________________________________
Frugalware-git mailing list
[email protected]
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to