You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							146 lines
						
					
					
						
							5.2 KiB
						
					
					
				
			
		
		
	
	
							146 lines
						
					
					
						
							5.2 KiB
						
					
					
				# --- SDE-COPYRIGHT-NOTE-BEGIN --- | 
						|
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. | 
						|
# | 
						|
# Filename: package/.../mine/gasgui-any-archiver.patch | 
						|
# Copyright (C) 2005 - 2006 The T2 SDE Project | 
						|
# | 
						|
# More information can be found in the files COPYING and README. | 
						|
# | 
						|
# This patch file is dual-licensed. It is available under the license the | 
						|
# patched project is licensed under, as long as it is an OpenSource license | 
						|
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms | 
						|
# of the GNU General Public License as published by the Free Software | 
						|
# Foundation; either version 2 of the License, or (at your option) any later | 
						|
# version. | 
						|
# --- SDE-COPYRIGHT-NOTE-END --- | 
						|
 | 
						|
 | 
						|
Likewise allow handling of any compressed tarball. | 
						|
 | 
						|
  - Rene Rebe <[email protected]> | 
						|
 | 
						|
--- mine-0.23/gasgui.c	2005-03-23 09:51:06.000000000 +0100 | 
						|
+++ mine-0.23-patched/gasgui.c	2005-12-18 19:17:08.000000000 +0100 | 
						|
@@ -39,6 +39,8 @@ | 
						|
 char * sourcedir = "/mnt/cdrom0"; | 
						|
 char * sourceopt = "ro"; | 
						|
  | 
						|
+char * sourcefmt = "tar.bz2"; | 
						|
+ | 
						|
 char * mine_command = "mine"; | 
						|
 char * mine_fopt = ""; | 
						|
  | 
						|
@@ -68,6 +70,7 @@ | 
						|
 "  -D		Read package db and dump the memory DB as tree (debug).\n" | 
						|
 "  -T		Don't really execute 'mine', print commands instead (debug).\n" | 
						|
 "  -F		Start mine with the '-f' option (used by install scripts).\n" | 
						|
+"  -S		Source format, e.g. tar.bz2, tar.gz or gem\n" | 
						|
 "\n" | 
						|
 	); | 
						|
 } | 
						|
@@ -110,27 +113,27 @@ | 
						|
 	char command[1024]; | 
						|
  | 
						|
 	while ( !strncmp(sourcedir, "http://", 7) || !strncmp(sourcedir, "ftp://", 6) ) { | 
						|
-		snprintf(gemfile, 1024, "%s/%s-%s.gem", | 
						|
-		         targetdir, p->name, p->version); | 
						|
+		snprintf(gemfile, 1024, "%s/%s-%s.%s", | 
						|
+		         targetdir, p->name, p->version, sourcefmt); | 
						|
  | 
						|
-		snprintf(command, 1024, "wget -O '%s' -q '%s/%s/pkgs/%s-%s.gem'", | 
						|
-		         gemfile, sourcedir, config, p->name, p->version); | 
						|
+		snprintf(command, 1024, "wget -O '%s' -q '%s/%s/pkgs/%s-%s.%s'", | 
						|
+		         gemfile, sourcedir, config, p->name, p->version, sourcefmt); | 
						|
 		system(command); | 
						|
 		snprintf(command, 1024, "test -s '%s' || rm -f %s", gemfile, gemfile); | 
						|
 		system(command); | 
						|
 		if ( !access(gemfile, F_OK) ) return gemfile; | 
						|
  | 
						|
-		snprintf(command, 1024, "wget -O '%s' -q '%s/%s/pkgs/%s.gem'", | 
						|
-		         gemfile, sourcedir, config, p->name); | 
						|
+		snprintf(command, 1024, "wget -O '%s' -q '%s/%s/pkgs/%s.%s'", | 
						|
+		         gemfile, sourcedir, config, p->name, sourcefmt); | 
						|
 		system(command); | 
						|
 		snprintf(command, 1024, "test -s '%s' || rm -f %s", gemfile, gemfile); | 
						|
 		system(command); | 
						|
 		if ( !access(gemfile, F_OK) ) return gemfile; | 
						|
  | 
						|
-		printf("Can't find: %s/%s/pkgs/%s-%s.gem\n", | 
						|
-			sourcedir, config, p->name, p->version); | 
						|
-		printf("Can't find: %s/%s/pkgs/%s.gem\n", | 
						|
-			sourcedir, config, p->name); | 
						|
+		printf("Can't find: %s/%s/pkgs/%s-%s.%s\n", | 
						|
+			sourcedir, config, p->name, p->version, sourcefmt); | 
						|
+		printf("Can't find: %s/%s/pkgs/%s.%s\n", | 
						|
+			sourcedir, config, p->name, sourcefmt); | 
						|
 		printf("Not found on webserver: %s\n\n", p->name); | 
						|
 		while (1) { | 
						|
 			printf("Skip or Retry (default=Retry) > "); | 
						|
@@ -143,12 +146,12 @@ | 
						|
 	} | 
						|
  | 
						|
 	while (1) { | 
						|
-		snprintf(gemfile, 1024, "%s/%s/pkgs/%s-%s.gem", | 
						|
-			sourcedir, config, p->name, p->version); | 
						|
+		snprintf(gemfile, 1024, "%s/%s/pkgs/%s-%s.%s", | 
						|
+			sourcedir, config, p->name, p->version, sourcefmt); | 
						|
 		if ( !access(gemfile, F_OK) ) return gemfile; | 
						|
  | 
						|
-		snprintf(gemfile, 1024, "%s/%s/pkgs/%s.gem", | 
						|
-			sourcedir, config, p->name); | 
						|
+		snprintf(gemfile, 1024, "%s/%s/pkgs/%s.%s", | 
						|
+			sourcedir, config, p->name, sourcefmt); | 
						|
 		if ( !access(gemfile, F_OK) ) return gemfile; | 
						|
  | 
						|
 		/* looks like there are sometimes races with asyncrounously running mine subprocesses or something | 
						|
@@ -156,10 +159,10 @@ | 
						|
 		snprintf(command, 1024, "umount -v %s &> /dev/null || { sleep 1; umount -v %s; }", sourcedir, sourcedir); | 
						|
 		system(command); | 
						|
  | 
						|
-		printf("Can't find: %s/%s/pkgs/%s-%s.gem\n", | 
						|
-			sourcedir, config, p->name, p->version); | 
						|
-		printf("Can't find: %s/%s/pkgs/%s.gem\n", | 
						|
-			sourcedir, config, p->name); | 
						|
+		printf("Can't find: %s/%s/pkgs/%s-%s.%s\n", | 
						|
+			sourcedir, config, p->name, p->version, sourcefmt); | 
						|
+		printf("Can't find: %s/%s/pkgs/%s.%s\n", | 
						|
+			sourcedir, config, p->name, sourcefmt); | 
						|
 		printf("Not found on current disk: %s\n\n", p->name); | 
						|
 		printf("Please insert Disk #%d and press ENTER.\n\n", | 
						|
 		       p->disk_number); | 
						|
@@ -174,12 +177,12 @@ | 
						|
 				eject_disk (); | 
						|
 		} | 
						|
  | 
						|
-		snprintf(gemfile, 1024, "%s/%s/pkgs/%s-%s.gem", | 
						|
-			sourcedir, config, p->name, p->version); | 
						|
+		snprintf(gemfile, 1024, "%s/%s/pkgs/%s-%s.%s", | 
						|
+			sourcedir, config, p->name, p->version, sourcefmt); | 
						|
 		if ( !access(gemfile, F_OK) ) return gemfile; | 
						|
  | 
						|
-		snprintf(gemfile, 1024, "%s/%s/pkgs/%s.gem", | 
						|
-			sourcedir, config, p->name); | 
						|
+		snprintf(gemfile, 1024, "%s/%s/pkgs/%s.%s", | 
						|
+			sourcedir, config, p->name, sourcefmt); | 
						|
 		if ( !access(gemfile, F_OK) ) return gemfile; | 
						|
  | 
						|
 		snprintf(command, 1024, "mount -v -o %s %s %s", | 
						|
@@ -237,7 +240,7 @@ | 
						|
 	struct package *p; | 
						|
 	int opt, disk; | 
						|
  | 
						|
-	while ( (opt = getopt(argc, argv, "c:t:d:s:o:DTF")) != -1 ) { | 
						|
+	while ( (opt = getopt(argc, argv, "c:t:d:s:o:S:DTF")) != -1 ) { | 
						|
 		switch (opt) { | 
						|
 			case 'c': | 
						|
 				config = optarg; | 
						|
@@ -263,6 +266,9 @@ | 
						|
 			case 'F': | 
						|
 				mine_fopt = "-f"; | 
						|
 				break; | 
						|
+			case 'S': | 
						|
+				sourcefmt = optarg; | 
						|
+				break; | 
						|
 			default: | 
						|
 				help(); | 
						|
 				return 0;
 | 
						|
 |