Hello community, here is the log from the commit of package unetbootin for openSUSE:Factory checked in at 2017-08-08 11:59:33 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/unetbootin (Old) and /work/SRC/openSUSE:Factory/.unetbootin.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "unetbootin" Tue Aug 8 11:59:33 2017 rev:7 rq:514992 version:0.0.655 Changes: -------- --- /work/SRC/openSUSE:Factory/unetbootin/unetbootin.changes 2017-06-20 09:40:19.004733107 +0200 +++ /work/SRC/openSUSE:Factory/.unetbootin.new/unetbootin.changes 2017-08-08 11:59:36.376925013 +0200 @@ -1,0 +2,7 @@ +Thu Aug 03 13:21:44 UTC 2017 - joerg.loren...@ki.tng.de + +- update to revision 655 +- added Leap_42.3 to supported versions +- fixed unetbootin-locate-usb-devices.diff + +------------------------------------------------------------------- Old: ---- unetbootin-source-647.tar.gz New: ---- unetbootin-source-655.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ unetbootin.spec ++++++ --- /var/tmp/diff_new_pack.xGlPhQ/_old 2017-08-08 11:59:37.664743632 +0200 +++ /var/tmp/diff_new_pack.xGlPhQ/_new 2017-08-08 11:59:37.672742505 +0200 @@ -1,7 +1,7 @@ # # spec file for package unetbootin # -# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,7 +16,7 @@ # -%define rev 647 +%define rev 655 Name: unetbootin Summary: Universal Netboot Installer @@ -31,11 +31,13 @@ Patch2: %{name}-desktop.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: gcc-c++ -BuildRequires: hicolor-icon-theme BuildRequires: libqt4-devel # Requires syslinux, and that only exists for the following arches: ExclusiveArch: %ix86 x86_64 -Requires: hicolor-icon-theme +Requires(post): hicolor-icon-theme +Requires(post): update-desktop-files +Requires(postun): hicolor-icon-theme +Requires(postun): update-desktop-files Requires: mtools Requires: p7zip Requires: syslinux @@ -74,6 +76,14 @@ install -D -m 0644 %{name}.desktop %{buildroot}%{_datadir}/applications/%{name}.desktop +%post +%desktop_database_post +%icon_theme_cache_post + +%postun +%desktop_database_postun +%icon_theme_cache_postun + %files %defattr(-,root,root) %doc README.TXT ++++++ unetbootin-locate-usb-devices.diff ++++++ --- /var/tmp/diff_new_pack.xGlPhQ/_old 2017-08-08 11:59:37.736733492 +0200 +++ /var/tmp/diff_new_pack.xGlPhQ/_new 2017-08-08 11:59:37.736733492 +0200 @@ -2,7 +2,7 @@ =================================================================== --- unetbootin.cpp.orig +++ unetbootin.cpp -@@ -575,17 +575,12 @@ QStringList unetbootin::listsanedrives() +@@ -508,17 +508,12 @@ } #endif #ifdef Q_OS_LINUX @@ -23,10 +23,10 @@ if (!volidcommand.isEmpty()) { if (QString(callexternapp(volidcommand, QString("-t %2").arg(usbfileinfoL.at(i).canonicalFilePath()))).contains(QRegExp("(vfat|ext2|ext3|ext4)"))) -@@ -602,20 +597,7 @@ QStringList unetbootin::listsanedrives() - } - } - } +@@ -635,20 +630,7 @@ + } + } + } - /* - QString fdisklusbdevsS = callexternapp(fdiskcommand, "-l"); - QStringList usbdevsL = QString(fdisklusbdevsS).split("\n").filter(QRegExp("\\.{0,}FAT|Disk\\.{0,}")).join("\n").split(" ").join("\n").split("\t").join("\n").split("\n").filter("/dev/"); @@ -43,5 +43,5 @@ - #endif + #endif #ifdef Q_OS_MAC - QString diskutilList = callexternapp("diskutil", "list"); - QStringList usbdevsL = diskutilList.split("\n").filter(QRegExp("(FAT|Microsoft)")).join(" ").split(" ").filter("disk"); + QString systemprofilertext = callexternapp("system_profiler", "SPStorageDataType"); + QRegExp filesystemregex("File System: (.+)\\n"); ++++++ unetbootin-source-647.tar.gz -> unetbootin-source-655.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/README.TXT new/README.TXT --- old/README.TXT 2017-05-01 07:40:11.000000000 +0200 +++ new/README.TXT 2017-07-18 23:28:51.000000000 +0200 @@ -1,16 +1,16 @@ -UNetbootin Source Revision 647 +UNetbootin Source Revision 655 Copyright Geza Kovacs Homepage at http://unetbootin.sourceforge.net Licensed under the GNU GPL v2 and above, components from other projects are licensed under their respective licenses -Build generated on Sun Apr 30 22:40:11 PDT 2017 +Build generated on Tue Jul 18 14:28:51 PDT 2017 Download using git: git clone https://github.com/gkovacs/unetbootin.git cd unetbootin -git checkout e1bb2616dba89676730603cb1fd450679765cc63 +git checkout 8ca8d67ae8da723b2f7142fd7e3112970395e13a Download using bzr: -bzr branch http://bazaar.launchpad.net/~vcs-imports/unetbootin/trunk -r647 +bzr branch http://bazaar.launchpad.net/~vcs-imports/unetbootin/trunk -r655 Build instructions at http://sourceforge.net/apps/trac/unetbootin/wiki/compile diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/distrolst.cpp new/distrolst.cpp --- old/distrolst.cpp 2017-05-01 07:04:50.000000000 +0200 +++ new/distrolst.cpp 2017-07-14 07:31:37.000000000 +0200 @@ -376,26 +376,22 @@ if (nameDistro == "Fedora") { - QString minorarch = ""; if (isarch64) { cpuarch = "x86_64"; - minorarch = "x86_64"; } else { cpuarch = "i386"; - minorarch = "i686"; } if (islivecd) { downloadfile(fileFilterNetDir(QStringList() << - "http://download.fedoraproject.org/pub/fedora/linux/releases/"+relname+"/Live/"+cpuarch+"/" + "http://download.fedoraproject.org/pub/fedora/linux/releases/"+relname+"/Workstation/"+cpuarch+"/iso/" , 524288000, 2233125376, QList<QRegExp>() << QRegExp(".iso$", Qt::CaseInsensitive) << QRegExp("Fedora", Qt::CaseInsensitive) << - QRegExp("Live", Qt::CaseInsensitive) << - QRegExp("LXDE", Qt::CaseInsensitive) + QRegExp("Live", Qt::CaseInsensitive) ), isotmpf); extractiso(isotmpf); } @@ -403,15 +399,15 @@ { if (relname == "rawhide") { - downloadfile(QString("download.fedoraproject.org/pub/fedora/linux/development/%1/os/images/pxeboot/vmlinuz").arg(cpuarch), QString("%1ubnkern").arg(targetPath)); - downloadfile(QString("download.fedoraproject.org/pub/fedora/linux/development/%1/os/images/pxeboot/initrd.img").arg(cpuarch), QString("%1ubninit").arg(targetPath)); - postinstmsg = unetbootin::tr("\n*IMPORTANT* After rebooting, ignore any error messages and select back if prompted for a CD, then go to the main menu, select the 'Start Installation' option, choose 'Network' as the source, choose 'HTTP' as the protocol, enter 'download.fedora.redhat.com' when prompted for a server, and enter '/pub/fedora/linux/development/%1/os' when asked for the folder.").arg(cpuarch); + downloadfile(QString("download.fedoraproject.org/pub/fedora/linux/development/rawhide/Workstation/%1/os/images/pxeboot/vmlinuz").arg(cpuarch), QString("%1ubnkern").arg(targetPath)); + downloadfile(QString("download.fedoraproject.org/pub/fedora/linux/development/rawhide/Workstation/%1/os/images/pxeboot/initrd.img").arg(cpuarch), QString("%1ubninit").arg(targetPath)); + postinstmsg = unetbootin::tr("\n*IMPORTANT* After rebooting, ignore any error messages and select back if prompted for a CD, then go to the main menu, select the 'Start Installation' option, choose 'Network' as the source, choose 'HTTP' as the protocol, enter 'download.fedoraproject.org' when prompted for a server, and enter '/pub/fedora/linux/development/rawhide/Workstation/%1/os' when asked for the folder.").arg(cpuarch); } else { - downloadfile(QString("http://download.fedoraproject.org/pub/fedora/linux/releases/%1/Fedora/%2/os/images/pxeboot/vmlinuz").arg(relname, cpuarch), QString("%1ubnkern").arg(targetPath)); - downloadfile(QString("http://download.fedoraproject.org/pub/fedora/linux/releases/%1/Fedora/%2/os/images/pxeboot/initrd.img").arg(relname, cpuarch), QString("%1ubninit").arg(targetPath)); - postinstmsg = unetbootin::tr("\n*IMPORTANT* After rebooting, ignore any error messages and select back if prompted for a CD, then go to the main menu, select the 'Start Installation' option, choose 'Network' as the source, choose 'HTTP' as the protocol, enter 'download.fedora.redhat.com' when prompted for a server, and enter '/pub/fedora/linux/releases/%1/Fedora/%2/os' when asked for the folder.").arg(relname, cpuarch); + downloadfile(QString("http://download.fedoraproject.org/pub/fedora/linux/releases/%1/Workstation/%2/os/images/pxeboot/vmlinuz").arg(relname, cpuarch), QString("%1ubnkern").arg(targetPath)); + downloadfile(QString("http://download.fedoraproject.org/pub/fedora/linux/releases/%1/Workstation/%2/os/images/pxeboot/initrd.img").arg(relname, cpuarch), QString("%1ubninit").arg(targetPath)); + postinstmsg = unetbootin::tr("\n*IMPORTANT* After rebooting, ignore any error messages and select back if prompted for a CD, then go to the main menu, select the 'Start Installation' option, choose 'Network' as the source, choose 'HTTP' as the protocol, enter 'download.fedoraproject.org' when prompted for a server, and enter '/pub/fedora/linux/releases/%1/Workstation/%2/os' when asked for the folder.").arg(relname, cpuarch); } kernelOpts = "splash=silent showopts"; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/distrover.cpp new/distrover.cpp --- old/distrover.cpp 2017-04-24 01:22:37.000000000 +0200 +++ new/distrover.cpp 2017-07-14 08:34:30.000000000 +0200 @@ -69,11 +69,11 @@ "<b>Description:</b> Elive is a Debian-based distribution featuring the Enlightenment window manager.<br/>" "<b>Install Notes:</b> The Live version allows for booting in Live mode, from which the installer can optionally be launched.") << "Stable_Live")); -distroselect->addItem("Fedora", (QStringList() << "22_Live" << +distroselect->addItem("Fedora", (QStringList() << "26_Live_x64" << unetbootin::tr("<b>Homepage:</b> <a href=\"http://fedoraproject.org/\">http://fedoraproject.org</a><br/>" "<b>Description:</b> Fedora is a Red Hat sponsored community distribution which showcases the latest cutting-edge free/open-source software.<br/>" "<b>Install Notes:</b> The Live version allows for booting in Live mode, from which the installer can optionally be launched. The NetInstall version allows for both installation over the internet (FTP), or offline installation using pre-downloaded installation ISO files.") << - "21_NetInstall" << "21_NetInstall_x64" << "21_Live" << "21_Live_x64" << "22_NetInstall" << "22_NetInstall_x64" << "22_Live" << "22_Live_x64" << "Rawhide_NetInstall" << "Rawhide_NetInstall_x64")); + "24_NetInstall" << "24_NetInstall_x64" << "24_Live" << "24_Live_x64" << "25_NetInstall" << "25_NetInstall_x64" << "25_Live" << "25_Live_x64" << "26_NetInstall_x64" << "26_Live_x64" << "Rawhide_NetInstall_x64")); distroselect->addItem("FreeBSD", (QStringList() << "8.0" << unetbootin::tr("<b>Homepage:</b> <a href=\"http://www.freebsd.org/\">http://www.freebsd.org</a><br/>" "<b>Description:</b> FreeBSD is a general-purpose Unix-like operating system designed for scalability and performance.<br/>" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unetbootin.cpp new/unetbootin.cpp --- old/unetbootin.cpp 2017-05-01 07:39:31.000000000 +0200 +++ new/unetbootin.cpp 2017-07-14 10:54:12.000000000 +0200 @@ -300,7 +300,7 @@ extlinuxcommand = locatecommand("extlinux", tr("EXT2-formatted USB drive"), "extlinux"); #endif sevzcommand = locatecommand("7z", tr("either"), "p7zip-full"); - #endif +#endif // Q_OS_LINUX ubntmpf = QDir::toNativeSeparators(QString("%1/").arg(QDir::tempPath())); #ifdef Q_OS_LINUX if (ubntmpf.isEmpty() || ubntmpf == "/") @@ -543,7 +543,7 @@ QStringList driveslist = listcurdrives(); for (int i = 0; i < driveslist.size(); ++i) { - driveselect->addItem(driveslist.at(i)); + driveselect->addItem(driveslist.at(i)); } } @@ -555,16 +555,36 @@ #ifdef Q_OS_MAC bool unetbootin::is_external_drive_macos(const QString &drivename) { - // drivename: disk3s1 - QString device_info = callexternapp("diskutil", "info " + drivename); - if (device_info.contains("External")) - { - return true; - } - return false; + // drivename: disk3s1 + QString device_info = callexternapp("diskutil", "info " + drivename); + if (device_info.contains("External")) + { + return true; + } + // stw "diskutil info" output changed; now look for line "Internal: No" + QStringList infoLines = device_info.split("\n").filter("Internal"); + for (int i = 0; i < infoLines.size(); i++) { + if (infoLines.at(i).contains("No")) + return true; + } + + return false; } #endif +QStringList unetbootin::matchinglist(QRegExp regex, QString text) +{ +QStringList matchinglist; +int pos = 0; + +while ((pos = regex.indexIn(text, pos)) != -1) { + matchinglist << regex.cap(1); + pos += regex.matchedLength(); +} + +return matchinglist; +} + QStringList unetbootin::listsanedrives() { QStringList fulldrivelist; @@ -630,12 +650,21 @@ */ #endif #ifdef Q_OS_MAC -QString diskutilList = callexternapp("diskutil", "list"); -QStringList usbdevsL = diskutilList.split("\n").filter(QRegExp("(FAT|Microsoft)")).join(" ").split(" ").filter("disk"); -for (int i = 0; i < usbdevsL.size(); ++i) +QString systemprofilertext = callexternapp("system_profiler", "SPStorageDataType"); +QRegExp filesystemregex("File System: (.+)\\n"); +QRegExp drivenameregex("BSD Name: (.+)\\n"); +filesystemregex.setMinimal(true); +drivenameregex.setMinimal(true); + +QStringList filesystemlist = matchinglist(filesystemregex, systemprofilertext); +QStringList drivenamelist = matchinglist(drivenameregex, systemprofilertext); + +QRegExp fatfilesystems("FAT|Microsoft"); + +for (int i = 0; i < filesystemlist.size(); ++i) { - if (is_external_drive_macos(usbdevsL.at(i))) { - fulldrivelist.append("/dev/"+usbdevsL.at(i)); + if ((fatfilesystems.indexIn(filesystemlist.at(i),0) != -1) && is_external_drive_macos(drivenamelist.at(i))) { + fulldrivelist.append("/dev/"+drivenamelist.at(i)); } } #endif @@ -770,6 +799,7 @@ default: break; } + refreshdriveslist(); // stw give it a chance to detect a new drive } #ifdef Q_OS_MAC if (locatemountpoint(driveselect->currentText()) == "NOT MOUNTED" && !testingDownload) @@ -4156,7 +4186,7 @@ callexternapp("hdiutil", "unmount "+targetDev); callexternapp("sync", ""); callexternapp(resourceDir.absoluteFilePath("mkbootable"), targetDev); - /* + /* callexternapp("sync", ""); callexternapp("diskutil", "umount "+targetDev); callexternapp("sync", ""); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unetbootin.h new/unetbootin.h --- old/unetbootin.h 2017-05-01 04:40:40.000000000 +0200 +++ new/unetbootin.h 2017-07-14 07:31:37.000000000 +0200 @@ -299,6 +299,7 @@ #endif void refreshdriveslist(); QStringList listcurdrives(); + QStringList matchinglist(QRegExp regex, QString text); QStringList listsanedrives(); QStringList listalldrives(); void replaceTextInFile(QString repfilepath, QRegExp replaceme, QString replacewith); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/unetbootin.ui new/unetbootin.ui --- old/unetbootin.ui 2017-04-21 06:57:19.000000000 +0200 +++ new/unetbootin.ui 2017-07-14 07:31:37.000000000 +0200 @@ -708,7 +708,6 @@ <tabstop>driveselect</tabstop> <tabstop>okbutton</tabstop> <tabstop>cancelbutton</tabstop> - <tabstop>frebootbutton</tabstop> <tabstop>fexitbutton</tabstop> <tabstop>intromessage</tabstop> <tabstop>rebootmsgtext</tabstop> ++++++ unetbootin-suse.patch ++++++ --- /var/tmp/diff_new_pack.xGlPhQ/_old 2017-08-08 11:59:38.248661390 +0200 +++ /var/tmp/diff_new_pack.xGlPhQ/_new 2017-08-08 11:59:38.260659700 +0200 @@ -5,12 +5,12 @@ "<b>Install Notes:</b> NTPasswd is booted and run in live mode; no installation is required to use it.") << "2008.05.26" << "2011.05.11")); - distroselect->addItem("openSUSE", (QStringList() << "11.1" << -+ distroselect->addItem("openSUSE", (QStringList() << "Leap_42.2" << ++ distroselect->addItem("openSUSE", (QStringList() << "Leap_42.3" << unetbootin::tr("<b>Homepage:</b> <a href=\"http://www.opensuse.org/\">http://www.opensuse.org</a><br/>" "<b>Description:</b> openSUSE is a user-friendly Novell sponsored distribution.<br/>" "<b>Install Notes:</b> The default version allows for both installation over the internet (FTP), or offline installation using pre-downloaded installation ISO files.") << - "11.1" << "11.1_x64" << "Factory" << "Factory_x64")); -+ "13.2" << "13.2_x64" << "Leap_42.1" << "Leap_42.2" << "Tumbleweed" << "Tumbleweed_x64" << "Factory" << "Factory_x64")); ++ "13.2" << "13.2_x64" << "Leap_42.1" << "Leap_42.2" << "Leap_42.3" << "Tumbleweed" << "Tumbleweed_x64" << "Factory" << "Factory_x64")); distroselect->addItem("Ophcrack", (QStringList() << "XP-LiveCD-2.0" << unetbootin::tr("<b>Homepage:</b> <a href=\"http://ophcrack.sourceforge.net/\">http://ophcrack.sourceforge.net</a><br/>" "<b>Description:</b> Ophcrack can crack Windows passwords.<br/>"