| 
									
										
										
										
											2014-04-14 14:02:44 +02:00
										 |  |  | import ./make-test.nix ({ pkgs, ... }: { | 
					
						
							| 
									
										
										
										
											2014-06-28 16:04:49 +02:00
										 |  |  |   name = "kde4"; | 
					
						
							| 
									
										
										
										
											2010-01-05 11:18:43 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-14 18:20:50 +00:00
										 |  |  |   machine = | 
					
						
							| 
									
										
										
										
											2010-01-05 11:18:43 +00:00
										 |  |  |     { config, pkgs, ... }: | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-09-04 13:05:09 +02:00
										 |  |  |     { imports = [ ./common/user-account.nix ]; | 
					
						
							| 
									
										
										
										
											2011-03-17 14:04:47 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-04-25 17:27:05 +02:00
										 |  |  |       virtualisation.memorySize = 1024; | 
					
						
							| 
									
										
										
										
											2013-07-09 15:16:04 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-17 14:04:47 +00:00
										 |  |  |       services.xserver.enable = true; | 
					
						
							| 
									
										
										
										
											2010-01-05 11:18:43 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |       services.httpd.enable = true; | 
					
						
							|  |  |  |       services.httpd.adminAddr = "foo@example.org"; | 
					
						
							|  |  |  |       services.httpd.documentRoot = "${pkgs.valgrind}/share/doc/valgrind/html"; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |       services.xserver.displayManager.kdm.enable = true; | 
					
						
							|  |  |  |       services.xserver.displayManager.kdm.extraConfig = | 
					
						
							|  |  |  |         ''
 | 
					
						
							|  |  |  |           [X-:0-Core] | 
					
						
							|  |  |  |           AutoLoginEnable=true | 
					
						
							|  |  |  |           AutoLoginUser=alice | 
					
						
							|  |  |  |           AutoLoginPass=foobar | 
					
						
							|  |  |  |         '';
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |       services.xserver.desktopManager.kde4.enable = true; | 
					
						
							| 
									
										
										
										
											2013-07-17 14:54:25 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |       # Include most of KDE. We don't really test these here, but at | 
					
						
							|  |  |  |       # least they should build. | 
					
						
							|  |  |  |       environment.systemPackages = | 
					
						
							|  |  |  |         [ pkgs.kde4.kdemultimedia | 
					
						
							|  |  |  |           pkgs.kde4.kdegraphics | 
					
						
							|  |  |  |           pkgs.kde4.kdeutils | 
					
						
							|  |  |  |           pkgs.kde4.kdegames | 
					
						
							| 
									
										
										
										
											2014-09-29 13:31:37 +02:00
										 |  |  |           #pkgs.kde4.kdeedu | 
					
						
							| 
									
										
										
										
											2013-07-17 14:54:25 +02:00
										 |  |  |           pkgs.kde4.kdeaccessibility | 
					
						
							|  |  |  |           pkgs.kde4.kdeadmin | 
					
						
							|  |  |  |           pkgs.kde4.kdenetwork | 
					
						
							|  |  |  |           pkgs.kde4.kdetoys | 
					
						
							|  |  |  |           pkgs.kde4.kdewebdev | 
					
						
							|  |  |  |         ]; | 
					
						
							| 
									
										
										
										
											2010-01-05 11:18:43 +00:00
										 |  |  |     }; | 
					
						
							| 
									
										
										
										
											2009-09-02 14:48:28 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-12-03 12:31:10 +01:00
										 |  |  |   testScript = '' 
 | 
					
						
							| 
									
										
										
										
											2011-03-15 07:23:37 +00:00
										 |  |  |       $machine->waitUntilSucceeds("pgrep plasma-desktop"); | 
					
						
							| 
									
										
										
										
											2010-01-05 23:38:13 +00:00
										 |  |  |       $machine->waitForWindow(qr/plasma-desktop/); | 
					
						
							| 
									
										
										
										
											2009-09-04 15:02:52 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-03-09 11:43:56 +00:00
										 |  |  |       # Check that logging in has given the user ownership of devices. | 
					
						
							| 
									
										
										
										
											2012-10-24 18:22:53 +02:00
										 |  |  |       $machine->succeed("getfacl /dev/snd/timer | grep -q alice"); | 
					
						
							| 
									
										
										
										
											2010-03-09 11:43:56 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-05 11:57:17 +00:00
										 |  |  |       $machine->execute("su - alice -c 'DISPLAY=:0.0 kwrite /var/log/messages &'"); | 
					
						
							| 
									
										
										
										
											2010-01-05 23:38:13 +00:00
										 |  |  |       $machine->waitForWindow(qr/messages.*KWrite/); | 
					
						
							| 
									
										
										
										
											2013-07-17 14:54:25 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |       $machine->execute("su - alice -c 'DISPLAY=:0.0 konqueror http://localhost/ &'"); | 
					
						
							| 
									
										
										
										
											2010-01-05 23:38:13 +00:00
										 |  |  |       $machine->waitForWindow(qr/Valgrind.*Konqueror/); | 
					
						
							| 
									
										
										
										
											2010-01-05 11:35:59 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-07-17 14:54:25 +02:00
										 |  |  |       $machine->execute("su - alice -c 'DISPLAY=:0.0 gwenview ${pkgs.kde4.kde_wallpapers}/share/wallpapers/Hanami/contents/images/1280x1024.jpg &'"); | 
					
						
							|  |  |  |       $machine->waitForWindow(qr/Gwenview/); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |       $machine->sleep(10); | 
					
						
							| 
									
										
										
										
											2011-09-14 18:20:50 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-12-03 17:18:18 +01:00
										 |  |  |       $machine->screenshot("screen");  | 
					
						
							| 
									
										
										
										
											2009-09-02 14:48:28 +00:00
										 |  |  |     '';
 | 
					
						
							| 
									
										
										
										
											2011-09-14 18:20:50 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-04-14 14:02:44 +02:00
										 |  |  | }) |