From c447632087665949d734add8f080e250a911c967 Mon Sep 17 00:00:00 2001
From: James Meyer <james.meyer@operamail.com>
Date: Thu, 19 Feb 2009 14:53:56 -0600
Subject: update the list of suppored nvidia cards by the 96xx driver

---
 abs/core-testing/LinHES-config/PKGBUILD            |   2 +-
 .../templates/xorg/96xx_supported.txt              | 137 ++++++++++++++++++++-
 2 files changed, 134 insertions(+), 5 deletions(-)

diff --git a/abs/core-testing/LinHES-config/PKGBUILD b/abs/core-testing/LinHES-config/PKGBUILD
index 45dcdd7..9eb4a89 100755
--- a/abs/core-testing/LinHES-config/PKGBUILD
+++ b/abs/core-testing/LinHES-config/PKGBUILD
@@ -1,6 +1,6 @@
 pkgname=LinHES-config
 pkgver=1.0
-pkgrel=270
+pkgrel=271
 conflicts=(MythVantage-config MythVantage-config-dev LinHES-config-dev )
 pkgdesc="Install and configure your system"
 depends=(bc libstatgrab  mysql-python expect curl dnsutils parted sg3_utils nmbscan )
diff --git a/abs/core-testing/LinHES-config/templates/xorg/96xx_supported.txt b/abs/core-testing/LinHES-config/templates/xorg/96xx_supported.txt
index eddcbd4..dd4833a 100644
--- a/abs/core-testing/LinHES-config/templates/xorg/96xx_supported.txt
+++ b/abs/core-testing/LinHES-config/templates/xorg/96xx_supported.txt
@@ -1,9 +1,69 @@
     NVIDIA GPU product                    Device PCI ID
-    ----------------------------------    ----------------------------------
+    
+    GeForce 6800 Ultra                    0x0040
+    GeForce 6800                          0x0041
+    GeForce 6800 XE                       0x0043
+    GeForce 6800 XT                       0x0044
+    GeForce 6800 GT                       0x0045
+    GeForce 6800 GT                       0x0046
+    GeForce 6800 GS                       0x0047
+    GeForce 6800 XT                       0x0048
+    Quadro FX 4000                        0x004E
+    GeForce 7800 GTX                      0x0090
+    GeForce 7800 GTX                      0x0091
+    GeForce 7800 GT                       0x0092
+    GeForce 7800 GS                       0x0093
+    GeForce Go 7800                       0x0098
+    GeForce Go 7800 GTX                   0x0099
+    Quadro FX 4500                        0x009D
+    GeForce 6800 GS                       0x00C0
+    GeForce 6800                          0x00C1
+    GeForce 6800 LE                       0x00C2
+    GeForce 6800 XT                       0x00C3
+    GeForce Go 6800                       0x00C8
+    GeForce Go 6800 Ultra                 0x00C9
+    Quadro FX Go1400                      0x00CC
+    Quadro FX 3450/4000 SDI               0x00CD
+    Quadro FX 1400                        0x00CE
+    GeForce 6800/GeForce 6800 Ultra       0x00F0
+    GeForce 6600/GeForce 6600 GT          0x00F1
+    GeForce 6600                          0x00F2
+    GeForce 6200                          0x00F3
+    GeForce 6600 LE                       0x00F4
+    GeForce 7800 GS                       0x00F5
+    GeForce 6800 GS                       0x00F6
+    Quadro FX 3400/4400                   0x00F8
+    GeForce 6800 Ultra                    0x00F9
+    GeForce PCX 5750                      0x00FA
+    GeForce PCX 5900                      0x00FB
+    Quadro FX 330/GeForce PCX 5300        0x00FC
+    Quadro NVS 280 PCI-E/Quadro FX 330    0x00FD
+    Quadro FX 1300                        0x00FE
+    GeForce PCX 4300                      0x00FF
     GeForce2 MX/MX 400                    0x0110
     GeForce2 MX 100/200                   0x0111
     GeForce2 Go                           0x0112
     Quadro2 MXR/EX/Go                     0x0113
+    GeForce 6600 GT                       0x0140
+    GeForce 6600                          0x0141
+    GeForce 6600 LE                       0x0142
+    GeForce 6600 VE                       0x0143
+    GeForce Go 6600                       0x0144
+    GeForce 6610 XL                       0x0145
+    GeForce Go 6600 TE/6200 TE            0x0146
+    GeForce Go 6600                       0x0148
+    GeForce Go 6600 GT                    0x0149
+    Quadro NVS 440                        0x014A
+    Quadro FX 550                         0x014C
+    Quadro FX 540                         0x014E
+    GeForce 6200                          0x014F
+    GeForce 6500                          0x0160
+    GeForce 6200 TurboCache(TM)           0x0161
+    GeForce Go 6200                       0x0164
+    Quadro NVS 285                        0x0165
+    GeForce Go 6400                       0x0166
+    GeForce Go 6200                       0x0167
+    GeForce Go 6400                       0x0168
     GeForce4 MX 460                       0x0170
     GeForce4 MX 440                       0x0171
     GeForce4 MX 420                       0x0172
@@ -14,7 +74,7 @@
     GeForce4 460 Go                       0x0177
     Quadro4 550 XGL                       0x0178
     GeForce4 440 Go 64M                   0x0179
-    Quadro NVS 400                        0x017A
+    Quadro NVS                            0x017A
     Quadro4 500 GoGL                      0x017C
     GeForce4 410 Go 16M                   0x017D
     GeForce4 MX 440 with AGP8X            0x0181
@@ -22,15 +82,31 @@
     GeForce4 MX 420 with AGP8X            0x0183
     GeForce4 MX 4000                      0x0185
     Quadro4 580 XGL                       0x0188
-    Quadro NVS 280 SD                     0x018A
+    Quadro NVS with AGP8X                 0x018A
     Quadro4 380 XGL                       0x018B
     Quadro NVS 50 PCI                     0x018C
     GeForce2 Integrated GPU               0x01A0
+    GeForce 7300 LE                       0x01D1
+    Quadro NVS 110M                       0x01D7
+    GeForce Go 7300                       0x01D7
+    GeForce Go 7400                       0x01D8
+    Quadro NVS 110M                       0x01DA
+    Quadro NVS 120M                       0x01DB
+    Quadro FX 350M                        0x01DC
+    Quadro FX 350                         0x01DE
+    GeForce 7300 GS                       0x01DF
     GeForce4 MX Integrated GPU            0x01F0
     GeForce3                              0x0200
     GeForce3 Ti 200                       0x0201
     GeForce3 Ti 500                       0x0202
     Quadro DCC                            0x0203
+    GeForce 6800                          0x0211
+    GeForce 6800 LE                       0x0212
+    GeForce 6800 GT                       0x0215
+    GeForce 6800 XT                       0x0218
+    GeForce 6150                          0x0240
+    GeForce 6150 LE                       0x0241
+    GeForce 6100                          0x0242
     GeForce4 Ti 4600                      0x0250
     GeForce4 Ti 4400                      0x0251
     GeForce4 Ti 4200                      0x0253
@@ -43,4 +119,57 @@
     GeForce4 4200 Go                      0x0286
     Quadro4 980 XGL                       0x0288
     Quadro4 780 XGL                       0x0289
-    Quadro4 700 GoGL                      0x028C
\ No newline at end of file
+    Quadro4 700 GoGL                      0x028C
+    GeForce 7900 GTX                      0x0290
+    GeForce 7900 GT                       0x0291
+    GeForce Go 7900 GS                    0x0298
+    GeForce Go 7900 GTX                   0x0299
+    Quadro FX 2500M                       0x029A
+    Quadro FX 1500M                       0x029B
+    Quadro FX 5500                        0x029C
+    Quadro FX 3500                        0x029D
+    Quadro FX 1500                        0x029E
+    Quadro FX 4500 X2                     0x029F
+    GeForce 7600 GS                       0x02E1
+    GeForce FX 5800 Ultra                 0x0301
+    GeForce FX 5800                       0x0302
+    Quadro FX 2000                        0x0308
+    Quadro FX 1000                        0x0309
+    GeForce FX 5600 Ultra                 0x0311
+    GeForce FX 5600                       0x0312
+    GeForce FX 5600XT                     0x0314
+    GeForce FX Go5600                     0x031A
+    GeForce FX Go5650                     0x031B
+    Quadro FX Go700                       0x031C
+    GeForce FX 5200                       0x0320
+    GeForce FX 5200 Ultra                 0x0321
+    GeForce FX 5200                       0x0322
+    GeForce FX 5200LE                     0x0323
+    GeForce FX Go5200                     0x0324
+    GeForce FX Go5250                     0x0325
+    GeForce FX 5500                       0x0326
+    GeForce FX 5100                       0x0327
+    GeForce FX Go5200 32M/64M             0x0328
+    Quadro NVS 280 PCI                    0x032A
+    Quadro FX 500/600 PCI                 0x032B
+    GeForce FX Go53xx                     0x032C
+    GeForce FX Go5100                     0x032D
+    GeForce FX 5900 Ultra                 0x0330
+    GeForce FX 5900                       0x0331
+    GeForce FX 5900XT                     0x0332
+    GeForce FX 5950 Ultra                 0x0333
+    GeForce FX 5900ZT                     0x0334
+    Quadro FX 3000                        0x0338
+    Quadro FX 700                         0x033F
+    GeForce FX 5700 Ultra                 0x0341
+    GeForce FX 5700                       0x0342
+    GeForce FX 5700LE                     0x0343
+    GeForce FX 5700VE                     0x0344
+    GeForce FX Go5700                     0x0347
+    GeForce FX Go5700                     0x0348
+    Quadro FX Go1000                      0x034C
+    Quadro FX 1100                        0x034E
+    GeForce 7600 GT                       0x0391
+    GeForce 7600 GS                       0x0392
+    GeForce Go 7600                       0x0398
+    Quadro FX 560                         0x039E
\ No newline at end of file
-- 
cgit v0.12


From 52ee5f857d07494db27ab5bb77b0c08f4a90f03d Mon Sep 17 00:00:00 2001
From: Bob Igo <bob@stormlogic.com>
Date: Thu, 19 Feb 2009 16:18:44 -0500
Subject: Further Tweaker refinement based on tester feedback.

---
 abs/core-testing/tweaker/PKGBUILD           |   2 +-
 abs/core-testing/tweaker/bin/twk_cpu.pl     |   2 +-
 abs/core-testing/tweaker/bin/twk_general.pl | 121 ++++++++++++++++++++++++----
 3 files changed, 108 insertions(+), 17 deletions(-)

diff --git a/abs/core-testing/tweaker/PKGBUILD b/abs/core-testing/tweaker/PKGBUILD
index 468dd40..e77d9a6 100644
--- a/abs/core-testing/tweaker/PKGBUILD
+++ b/abs/core-testing/tweaker/PKGBUILD
@@ -1,6 +1,6 @@
 pkgname=tweaker
 pkgver=1
-pkgrel=17
+pkgrel=18
 pkgdesc=""
 arch=('i686' 'x86_64')
 
diff --git a/abs/core-testing/tweaker/bin/twk_cpu.pl b/abs/core-testing/tweaker/bin/twk_cpu.pl
index fabef10..fb256cb 100755
--- a/abs/core-testing/tweaker/bin/twk_cpu.pl
+++ b/abs/core-testing/tweaker/bin/twk_cpu.pl
@@ -94,7 +94,7 @@ sub implement_option {
 	    case "high" {
 		change_or_make_setting('AutoCommflagWhileRecording', '1') || exit -1;
 		# ??? Interacts with screen aspect ratio
-		change_or_make_setting('Theme', 'blootube-wide') || exit -1; # High eye candy, potentially low performance
+		change_or_make_setting('Theme', 'LinHES') || exit -1; # High eye candy, potentially low performance
 		#change_or_make_entry("displayprofiles", [["pref_decoder", "ffmpeg"]], [["profilegroupid", "1"], ["profileid", "1"]]) || exit -1; # Most CPU usage, best quality
 		#change_or_make_setting('PreferredMPEG2Decoder', 'ffmpeg') || exit -1; # Most CPU usage, best quality
 		change_or_make_setting('DefaultVideoPlaybackProfile', 'CPU++') || exit -1; # best playback defaults for powerful hardware
diff --git a/abs/core-testing/tweaker/bin/twk_general.pl b/abs/core-testing/tweaker/bin/twk_general.pl
index c72e093..d62536f 100755
--- a/abs/core-testing/tweaker/bin/twk_general.pl
+++ b/abs/core-testing/tweaker/bin/twk_general.pl
@@ -32,9 +32,6 @@ sub implement_option {
 	my @commands = (
 	    # keymap tweaks
 	    "twk_keymap.sh"
-	    #
-	    # These may or may not be necessary after GF21
-	    #
 	    );
 	
 	foreach my $command (@commands) {
@@ -118,22 +115,56 @@ sub implement_option {
 		     join("','",($players[3][0], $players[3][3], $players[3][0], "action/puzzle", "2006", "Frozen Bubble Team", "/usr/games", $players[3][4]))."');");
 
 	    #
-	    # default playgroup with time-related settings
+	    # smart music playlists
 	    #
-	    change_or_make_entry("playgroup", [["skipahead", 10], ["skipback", 5], ["timestretch", 100], ["jump", 1]], [["name", "Default"]]);
+	    # categoryid, name
+	    change_or_make_entry("music_smartplaylist_categories", [["name", "Decades"]], [["categoryid", 1]]);
+	    change_or_make_entry("music_smartplaylist_categories", [["name", "Favorite Tracks"]], [["categoryid", 2]]);
+	    change_or_make_entry("music_smartplaylist_categories", [["name", "New Tracks"]], [["categoryid", 3]]);
+
+	    foreach my $decade (60, 70, 80, 90, 100) {
+		my $id = ($decade / 10) - 5;
+		my $query = "INSERT INTO music_smartplaylist_items (smartplaylistid, field, operator, value1, value2) VALUES ($id, 'Year', 'is between'," . ($decade+1900) . "," . ($decade+1909) . ");";
+		do_query($query);
+		$query = "INSERT INTO music_smartplaylists (name, categoryid, matchtype, orderby, limitto) VALUES ('". ($decade+1900) . "\\'s', 1, 'All', 'Artist (A)', 0);";
+		do_query($query);
+	    }
+
+	    my @other_lists = (
+		[
+		 ( 'Rating', 'is greater than', '7', 'Favorite Tracks', 2, 'Artist (A), Album (A)', 0 ),
+		 ( 'Play Count', 'is greater than', '0', '100 Most Played Tracks', 2, 'Play Count (D)', 100 ),
+		 ( 'Play Count', 'is equal to', '0', 'Never Played Tracks', 3, 'Artist (A), Album (A)', 0 )
+		]);
+
+	    my $id=6;
+	    foreach my $other_list (@other_lists) {
+		change_or_make_entry("music_smartplaylist_items", [["field", @$other_list[0]], ["operator", @$other_list[1]], ["value1", @$other_list[2]]], [["smartplaylistid", $id]]);
+		change_or_make_entry("music_smartplaylists", [["name", @$other_list[3]], ["categoryid", @$other_list[4]], ["matchtype", "All"], ["orderby", @$other_list[5]], ["limitto", @$other_list[6]]], [["smartplaylistid", $id]]);
+		$id++;
+	    }
 
 	    #
-	    # useful recording profiles and transcoding options
+	    # default playgroup with time-related settings
 	    #
-	    change_or_make_entry("profilegroups", [["name", "MPEG-2 Encoders (PVR-x50, PVR-500)"], ["cardtype", "MPEG"], ["is_default", 1]], [["id", 2]]); # rename the default entry for improved usability
+	    change_or_make_entry("playgroup", [["skipahead", 10], ["skipback", 5], ["timestretch", 100], ["jump", 1]], [["name", "Default"]]);
 
 	    #
-	    # Websites for mythbrowser
+	    # useful recording profiles and transcoding options
 	    #
-	    change_or_make_entry("websites", [["grp", "LinHeS"], ["dsc", ""], ["updated", ""]], [["url", "http://knoppmyth.net"]]);
-	    change_or_make_entry("websites", [["grp", "LinHeS"], ["dsc", ""], ["updated", ""]], [["url", "http://knoppmythwiki.org"]]);
-
-	    
+	    change_or_make_entry("profilegroups", [["name", "Software Encoders (v4l based)"], ["cardtype", "V4L"], ["is_default", 1]], [["id", 1]]);
+	    change_or_make_entry("profilegroups", [["name", "MPEG-2 Encoders (PVR-x50, PVR-500)"], ["cardtype", "MPEG"], ["is_default", 1]], [["id", 2]]);
+	    change_or_make_entry("profilegroups", [["name", "Hardware MJPEG Encoders (Matrox G200-TV, Miro DC10, etc)"], ["cardtype", "MJPEG"], ["is_default", 1]], [["id", 3]]);
+	    change_or_make_entry("profilegroups", [["name", "Hardware HDTV"], ["cardtype", "HDTV"], ["is_default", 1]], [["id", 4]]);
+	    change_or_make_entry("profilegroups", [["name", "Hardware DVB Encoders"], ["cardtype", "DVB"], ["is_default", 1]], [["id", 5]]);
+	    change_or_make_entry("profilegroups", [["name", "Transcoders"], ["cardtype", "TRANSCODE"], ["is_default", 1]], [["id", 6]]);
+	    change_or_make_entry("profilegroups", [["name", "FireWire Input"], ["cardtype", "FIREWIRE"], ["is_default", 1]], [["id", 7]]);
+	    change_or_make_entry("profilegroups", [["name", "USB Mpeg-4 Encoder (Plextor ConvertX, etc)"], ["cardtype", "GO7007"], ["is_default", 1]], [["id", 8]]);
+	    change_or_make_entry("profilegroups", [["name", "DBOX2 Input"], ["cardtype", "DBOX2"], ["is_default", 1]], [["id", 9]]);
+	    change_or_make_entry("profilegroups", [["name", "Freebox Input"], ["cardtype", "Freebox"], ["is_default", 1]], [["id", 10]]);
+	    change_or_make_entry("profilegroups", [["name", "HDHomeRun Recorders"], ["cardtype", "HDHOMERUN"], ["is_default", 1]], [["id", 11]]);
+	    change_or_make_entry("profilegroups", [["name", "CRC IP Recorders"], ["cardtype", "CRC_IP"], ["is_default", 1]], [["id", 12]]);
+    
 	    do_query("INSERT INTO codecparams (profile, name, value) VALUES (21, 'transcodelossless', 0)");
 	    do_query("INSERT INTO codecparams (profile, name, value) VALUES (21, 'transcoderesize', 0)");
 	    do_query("INSERT INTO codecparams (profile, name, value) VALUES (21, 'mpeg4bitrate', 2200)");
@@ -221,6 +252,58 @@ sub implement_option {
 	    do_query("INSERT INTO codecparams (profile, name, value) VALUES (29, 'mp3quality', 7)");
 	    do_query("INSERT INTO codecparams (profile, name, value) VALUES (29, 'volume', 100)");
 
+
+	    # I don't know why we have so many of these.  Only profilegroup 6 seems to matter.
+	    change_or_make_entry("recordingprofiles", [["name", 'Default'], ["profilegroup", 1]], [["id", 1]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Live TV'], ["profilegroup", 1]], [["id", 2]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'High Quality'], ["profilegroup", 1]], [["id", 3]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Low Quality'], ["profilegroup", 1]], [["id", 4]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Default'], ["profilegroup", 2]], [["id", 5]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Live TV'], ["profilegroup", 2]], [["id", 6]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'High Quality'], ["profilegroup", 2]], [["id", 7]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Low Quality'], ["profilegroup", 2]], [["id", 8]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Default'], ["profilegroup", 3]], [["id", 9]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Live TV'], ["profilegroup", 3]], [["id", 10]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'High Quality'], ["profilegroup", 3]], [["id", 11]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Low Quality'], ["profilegroup", 3]], [["id", 12]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Default'], ["profilegroup", 4]], [["id", 13]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Live TV'], ["profilegroup", 4]], [["id", 14]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'High Quality'], ["profilegroup", 4]], [["id", 15]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Low Quality'], ["profilegroup", 4]], [["id", 16]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Default'], ["profilegroup", 5]], [["id", 17]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Live TV'], ["profilegroup", 5]], [["id", 18]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'High Quality'], ["profilegroup", 5]], [["id", 19]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Low Quality'], ["profilegroup", 5]], [["id", 20]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'RTjpeg/MPEG4'], ["profilegroup", 6], ["videocodec", "MPEG-4"], ["audiocodec", "Uncompressed"]], [["id", 21]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'MPEG2'], ["profilegroup", 6], ["videocodec", "MPEG-4"], ["audiocodec", "Uncompressed"]], [["id", 22]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Default'], ["profilegroup", 8]], [["id", 23]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Live TV'], ["profilegroup", 8]], [["id", 24]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'High Quality'], ["profilegroup", 8]], [["id", 25]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Low Quality'], ["profilegroup", 8]], [["id", 26]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'High Quality'], ["profilegroup", 6]], [["id", 27]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Medium Quality'], ["profilegroup", 6], ["videocodec", "MPEG-4"], ["audiocodec", "Uncompressed"]], [["id", 28]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Low Quality'], ["profilegroup", 6], ["videocodec", "MPEG-4"], ["audiocodec", "MP3"]], [["id", 29]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Default'], ["profilegroup", 10]], [["id", 30]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Live TV'], ["profilegroup", 10]], [["id", 31]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'High Quality'], ["profilegroup", 10]], [["id", 32]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Low Quality'], ["profilegroup", 10]], [["id", 33]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Default'], ["profilegroup", 11]], [["id", 34]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Live TV'], ["profilegroup", 11]], [["id", 35]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'High Quality'], ["profilegroup", 11]], [["id", 36]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Low Quality'], ["profilegroup", 11]], [["id", 37]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Default'], ["profilegroup", 12]], [["id", 38]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Live TV'], ["profilegroup", 12]], [["id", 39]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'High Quality'], ["profilegroup", 12]], [["id", 40]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Low Quality'], ["profilegroup", 12]], [["id", 41]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Default'], ["profilegroup", 7]], [["id", 42]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Live TV'], ["profilegroup", 7]], [["id", 43]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'High Quality'], ["profilegroup", 7]], [["id", 44]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Low Quality'], ["profilegroup", 7]], [["id", 45]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Default'], ["profilegroup", 9]], [["id", 46]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Live TV'], ["profilegroup", 9]], [["id", 47]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'High Quality'], ["profilegroup", 9]], [["id", 48]]);
+	    change_or_make_entry("recordingprofiles", [["name", 'Low Quality'], ["profilegroup", 9]], [["id", 49]]);
+
 	    #
 	    # settings
 	    #
@@ -252,7 +335,6 @@ sub implement_option {
 	    change_or_make_setting('HaltCommand', 'sudo /sbin/halt');
 	    change_or_make_setting('HostAudiotype','ALSA');
 	    change_or_make_setting('HostMiro','1');
-	    change_or_make_setting('HostMyhostname','type_hostname_here');
 	    change_or_make_setting('HostXine','1');
 	    change_or_make_setting('Hostpluginmythappletrailers','1');
 	    change_or_make_setting('Hostpluginmytharchive','1');
@@ -337,7 +419,7 @@ sub implement_option {
 	    change_or_make_setting('VideoGalleryNoDB', '1');
 	    change_or_make_setting('VideoStartupDir', $SQL_DirVideo);
 	    change_or_make_setting('VideoTreeNoDB', '1');
-	    change_or_make_setting('VisualMode','BumpScope;Gears;Goom;MonoScope;Squares;StereoScope;Synaesthesia;LibVisual-bumpscope;LibVisual-corona;LibVisual-infinite;LibVisual-jakdaw;LibVisual-jess;AlbumArt');
+	    change_or_make_setting('VisualMode','BumpScope;Gears;Goom;MonoScope;Squares;StereoScope;Synaesthesia;LibVisual-bumpscope;LibVisual-corona;LibVisual-infinite;AlbumArt');
 	    change_or_make_setting('weatherbackgroundfetch', '1');
 	    change_or_make_setting('WebBrowserCommand','/usr/bin/mythbrowser');
 	    change_or_make_setting('WebBrowserHideScrollbars','0');
@@ -365,6 +447,10 @@ sub implement_option {
 	    change_or_make_setting('mythfilldatabaseLastRunEnd','');
 	    change_or_make_setting('mythfilldatabaseLastRunStatus','');
 
+	    #
+	    # customexample table
+	    #
+	    change_or_make_entry("customexample", [["fromclause", ""], ["whereclause", "program.category_type = \'movie\' AND program.airdate >= YEAR(DATE_SUB(NOW(), INTERVAL 1 YEAR)) AND program.stars > 0.5 "], ["search", "1"]], [["rulename", "New Flix"]]);
 
 #	    # As much of MythWeather as we can automate for now
 	    my $units = 0;
@@ -439,6 +525,12 @@ sub implement_option {
 	    
 	    # storagegroup
 	    change_or_make_entry("storagegroup", [["groupname", "Default"], ["hostname", $hostname], ["dirname", $SQL_DirTV]], [["id", 1]]);
+
+	    #
+	    # Websites for mythbrowser
+	    #
+	    change_or_make_entry("websites", [["grp", "LinHeS"], ["dsc", ""], ["updated", ""]], [["url", "http://knoppmyth.net"]]);
+	    change_or_make_entry("websites", [["grp", "LinHeS"], ["dsc", ""], ["updated", ""]], [["url", "http://knoppmythwiki.org"]]);
 	    
 	    disconnect_from_db();
 
@@ -455,7 +547,6 @@ sub implement_option {
 	    #$command = "sed -i \"/<type>STREAM<\\/type>\$/{N; N; N; N; s/text>.*<\\/text/text>Online Streams<\\/text/; s/action>.*<\\/action/action>MENU is.xml<\\/action/; s/<depends.*depends>//; }\" /usr/share/mythtv/library.xml";
 	    $command = "/bin/cp /usr/share/mythtv/library.xml.km /usr/share/mythtv/library.xml";
 	    execute_shell_command($command);
-	    
 	} else {
 	    my $logger = get_logger('tweaker.script');
 	    $logger->error("Unable to connect to mythconverg database");
-- 
cgit v0.12


From 4adf0153cbc675daea90ccc0f7f1935eb6b2aa23 Mon Sep 17 00:00:00 2001
From: Bob Igo <bob@stormlogic.com>
Date: Thu, 19 Feb 2009 16:31:04 -0500
Subject: Merged some twk_tuners.pl fixes from local KnoppMyth patches repo.

---
 abs/core-testing/tweaker/bin/twk_tuners.pl | 91 ++++++++++++++++--------------
 1 file changed, 48 insertions(+), 43 deletions(-)

diff --git a/abs/core-testing/tweaker/bin/twk_tuners.pl b/abs/core-testing/tweaker/bin/twk_tuners.pl
index 0b2b88c..f928ea7 100755
--- a/abs/core-testing/tweaker/bin/twk_tuners.pl
+++ b/abs/core-testing/tweaker/bin/twk_tuners.pl
@@ -1,6 +1,6 @@
 #!/usr/bin/perl -w
 
-# Copyright 2008-2009 Robert ("Bob") Igo of StormLogic, LLC and mythic.tv.
+# Copyright 2008 Robert ("Bob") Igo of StormLogic, LLC and mythic.tv.
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -31,8 +31,8 @@ my @capture_card_patterns = (
     # ATSC-only devices
     [ "pcHDTV hd-2000", [".*0400.*109e.*036e.*r11.*7063.*2000.*"],
       ["DVB", ["ATSC"]]],
-    [ "BBTI Air2PC v2", [".*0280.*13d0.*2103.*r02.*13d0.*2103.*"], # ??? dupe 1; mihanson
-      ["DVB", ["ATSC"]]],
+#    [ "BBTI Air2PC v2", [".*0280.*13d0.*2103.*r02.*13d0.*2103.*"], # ??? dupe 1; mihanson
+#      ["DVB", ["ATSC"]]],
     
     # DVB-T devices
     [ "DViCO FusionHDTV DVB-T Lite", [".*0400.*109e.*036e.*r11.*18ac.*db10.*"],
@@ -60,8 +60,8 @@ my @capture_card_patterns = (
     # DVB-S devices
     [ "VisionPlus 1020A", [".*0480.*109e.*0878.*1822.*0001.*"],
       ["DVB", ["DVB-S"]]],
-    [ "Technisat Skystar2", [".*0280.*13d0.*2103.*r01.*13d0.*2103.*"], # ??? dupe 1; nbdwt73, neutron68
-      ["DVB", ["DVB-S"]]],
+#    [ "Technisat Skystar2", [".*0280.*13d0.*2103.*r01.*13d0.*2103.*"], # ??? dupe 1; nbdwt73, neutron68
+#      ["DVB", ["DVB-S"]]],
     [ "Twinhan 102g", [".*0400.*109e.*036e.*r11.*1822.*0001.*"], # ??? dupe 2; neutron68
       # secondary device "0480" "109e" "0878" -r11 "1822" "0001"
       ["DVB", ["DVB-S"]]],
@@ -342,53 +342,58 @@ sub implement_option {
 	$logger->debug("Processing local devices...");
 	for my $pci_device (@lspci) {
 	    $logger->debug("DEVICE: $pci_device");
+	    my $match=0;
 
 	    for my $pci_device_data (@capture_card_patterns) {
 		$logger->debug("\tIs there a @$pci_device_data[0] at this location?");
+
 		for my $patterns (@$pci_device_data[1]) {
 		    for my $pattern (@$patterns) {
-			my $match=0;
-			$logger->debug("\t\tPATTERN: $pattern");
-			$match += ($pci_device =~ m/$pattern/i);
 			if ($match) {
-			    $global_device_count++; # 1-indexed
-						    
-			    $logger->debug("\t\tfound one!");
-			    # Each device has a device type (e.g. MPEG, DVB, V4L) that it supports, and a
-			    # list of sub_types (e.g. PAL, NTSC, DVB-S, DVB-T, DVB-C, ATSC, QAM).
-			    # The device type is used to configure the capturecard table and the cardinput table.
-			    # The sub_types are used to populate the videosource table.
-			    # The device type and "best" sub_type are used to set the 'sourceid' field of the cardinput table.
-
-			    for my $typeblock (@$pci_device_data[2]) {
-				my $pci_device_type = @$typeblock[0];
-				$logger->debug("\t\tDEVICE TYPE: $pci_device_type"); # e.g. "DVB", "MPEG", etc.
-				$cardtypes{$pci_device_type}++;
-				my $sourceid = -1;
-				for my $sub_types (@$typeblock[1]) {
-				    for my $sub_type (@$sub_types) {
-					$logger->debug("\t\tSUB-TYPE: $sub_type\n"); # e.g. "DVB-S", "QAM", etc.
-					# ensure that the videosource table has an entry for each sub_type
-					# that this device supports; use the "best" one for the device by
-					# default
-
-					#
-					# POPULATE videosource table
-					#
-					$sourceid = max(verify_or_make_videosource_SQL($sub_type), $sourceid);
+			    next;
+			} else {
+			    $logger->debug("\t\tPATTERN: $pattern");
+			    $match += ($pci_device =~ m/$pattern/i);
+			    if ($match) {
+				$global_device_count++; # 1-indexed
+				
+				$logger->debug("\t\tfound one!");
+				# Each device has a device type (e.g. MPEG, DVB, V4L) that it supports, and a
+				# list of sub_types (e.g. PAL, NTSC, DVB-S, DVB-T, DVB-C, ATSC, QAM).
+				# The device type is used to configure the capturecard table and the cardinput table.
+				# The sub_types are used to populate the videosource table.
+				# The device type and "best" sub_type are used to set the 'sourceid' field of the cardinput table.
+
+				for my $typeblock (@$pci_device_data[2]) {
+				    my $pci_device_type = @$typeblock[0];
+				    $logger->debug("\t\tDEVICE TYPE: $pci_device_type"); # e.g. "DVB", "MPEG", etc.
+				    $cardtypes{$pci_device_type}++;
+				    my $sourceid = -1;
+				    for my $sub_types (@$typeblock[1]) {
+					for my $sub_type (@$sub_types) {
+					    $logger->debug("\t\tSUB-TYPE: $sub_type\n"); # e.g. "DVB-S", "QAM", etc.
+					    # ensure that the videosource table has an entry for each sub_type
+					    # that this device supports; use the "best" one for the device by
+					    # default
+
+					    #
+					    # POPULATE videosource table
+					    #
+					    $sourceid = max(verify_or_make_videosource_SQL($sub_type), $sourceid);
+					}
 				    }
-				}
-				$logger->debug("\t\t\"BEST\" SOURCE ID: $sourceid\n");
+				    $logger->debug("\t\t\"BEST\" SOURCE ID: $sourceid\n");
 
-				#
-				# POPULATE capturecard table
-				#
-				my $defaultinput = make_capturecard_SQL($global_device_count, $cardtypes{$pci_device_type}-1, $pci_device_type, -1);
+				    #
+				    # POPULATE capturecard table
+				    #
+				    my $defaultinput = make_capturecard_SQL($global_device_count, $cardtypes{$pci_device_type}-1, $pci_device_type, -1);
 
-				#
-				# POPULATE cardinput table
-				#
-				make_cardinput_SQL($global_device_count, $sourceid, $defaultinput, 0);
+				    #
+				    # POPULATE cardinput table
+				    #
+				    make_cardinput_SQL($global_device_count, $sourceid, $defaultinput, 0);
+				}
 			    }
 			}
 		    }
-- 
cgit v0.12

