1# This file defines the content of the regular Haiku image.
2
3# import everything from the minimum image
4include [ FDirName $(HAIKU_BUILD_RULES_DIR) images definitions minimum ] ;
5
6SEARCH on [ FGristFiles userguide quicktour welcome ]
7	= [ FDirName $(HAIKU_TOP) data bin ] ;
8SYSTEM_BIN += userguide quicktour welcome ;
9
10SYSTEM_BIN += [ FFilterByBuildFeatures
11	cddb_lookup
12	clipboard CortexAddOnHost
13	dpms
14	FirstBootPrompt
15	<bin>i2c@x86,x86_64 installsound
16	mail mail2mbox mbox2mail media_client mount_nfs
17	pidof recover screenshot setcontrollook setdecor spamdbm
18	translate
19	WindowShade
20] ;
21
22SYSTEM_APPS += [ FFilterByBuildFeatures
23	ActivityMonitor AutoRaise
24	CodyCam
25	GLInfo@mesa
26	HaikuDepot
27	Icon-O-Matic@expat LaunchBox LegacyPackageInstaller
28	Magnify Mail MediaConverter MediaPlayer MidiPlayer
29	People PoorMan PowerStatus
30	RemoteDesktop
31	Screenshot SerialConnect SoftwareUpdater SoundRecorder
32] ;
33
34DESKBAR_APPLICATIONS +=
35	ActivityMonitor
36	CodyCam
37	HaikuDepot
38	Icon-O-Matic
39	Magnify Mail MediaConverter MediaPlayer MidiPlayer
40	People PoorMan
41	SerialConnect SoftwareUpdater SoundRecorder
42;
43
44DESKBAR_DESKTOP_APPLETS +=
45	AutoRaise
46	LaunchBox
47	PowerStatus
48;
49
50SYSTEM_PREFERENCES += [ FFilterByBuildFeatures
51	Bluetooth
52	DataTranslations
53	E-mail
54	Media
55	Printers
56	Repositories
57	ScreenSaver Sounds
58] ;
59
60SYSTEM_DEMOS += [ FFilterByBuildFeatures
61	Chart Clock Cortex@expat FontDemo GLTeapot@mesa
62	$(HAIKU_INCLUDE_TRADEMARKS)Haiku3d@mesa Mandelbrot OverlayImage Pairs
63	PatchBay Playground Pulse Sudoku
64] ;
65
66
67rule HaikuImageGetSystemLibs
68{
69	return
70		# libs with special grist
71		[ MultiArchDefaultGristFiles libroot.so : revisioned ]
72		[ Libstdc++ForImage ]
73		# libs with standard grist
74		[ MultiArchDefaultGristFiles [ FFilterByBuildFeatures
75			libalm.so
76			libbe.so libbsd.so libbnetapi.so
77			libbluetooth.so
78			libdebug.so
79			libdebugger.so@primary
80			libdevice.so
81			libgame.so libglut.so@mesa libgnu.so
82			libmail.so libmedia.so libmidi.so libmidi2.so
83			libnetwork.so
84			libpackage.so
85			libscreensaver.so
86			libtextencoding.so libtracker.so libtranslation.so
87		] ]
88		;
89}
90
91
92rule HaikuImageGetPrivateSystemLibs
93{
94	return [ MultiArchDefaultGristFiles [ FFilterByBuildFeatures
95		libalm.so
96		libpackage-add-on-libsolv.so
97		libroot-addon-icu.so
98	] ] ;
99}
100
101
102SYSTEM_SERVERS += [ FFilterByBuildFeatures
103	mail_daemon media_addon_server media_server midi_server
104	nfs4_idmapper_server bluetooth_server
105	print_server print_addon_server
106] ;
107
108# Bluetooth stack + drivers
109SYSTEM_BT_STACK = hci btCoreData ;
110SYSTEM_ADD_ONS_DRIVERS_BT_H2 +=
111	h2generic
112;
113
114SYSTEM_ADD_ONS_ACCELERANTS += [ FFilterByBuildFeatures
115	x86,x86_64 @{
116		ati.accelerant
117		intel_810.accelerant intel_extreme.accelerant
118		matrox.accelerant
119		nvidia.accelerant
120		radeon.accelerant radeon_hd.accelerant
121		via.accelerant
122	}@ # x86,x86_64
123	x86 @{
124		3dfx.accelerant neomagic.accelerant s3.accelerant
125	}@ # x86
126	virtio_gpu.accelerant
127] ;
128
129SYSTEM_ADD_ONS_TRANSLATORS += [ FFilterByBuildFeatures
130	AVIFTranslator@libavif
131	BMPTranslator
132	EXRTranslator@openexr
133	GIFTranslator
134	HVIFTranslator
135	ICOTranslator ICNSTranslator@libicns
136	JPEGTranslator@jpeg	JPEG2000Translator@jasper
137	PCXTranslator PNGTranslator@libpng PPMTranslator PSDTranslator
138	RAWTranslator RTFTranslator
139	SGITranslator
140	TGATranslator TIFFTranslator@tiff
141	WebPTranslator@libwebp WonderBrushTranslator
142] ;
143
144SYSTEM_ADD_ONS_MEDIA += [ FFilterByBuildFeatures
145	cortex_audioadapter.media_addon	cortex_flanger.media_addon
146	cortex_logging_consumer.media_addon
147	dvb.media_addon@x86
148	equalizer.media_addon
149	hmulti_audio.media_addon
150	#legacy.media_addon
151	mixer.media_addon
152	opensound.media_addon
153	tone_producer_demo.media_addon
154	usb_webcam.media_addon
155	video_producer_demo.media_addon	video_window_demo.media_addon
156	vst_host.media_addon
157] ;
158
159SYSTEM_ADD_ONS_MEDIA_PLUGINS += [ FFilterByBuildFeatures
160	ape_reader@x86
161	ffmpeg@ffmpeg
162	http_streamer
163	raw_decoder
164] ;
165
166SYSTEM_ADD_ONS_PRINT += [ FFilterByBuildFeatures
167	Canon\ LIPS3\ Compatible
168	Canon\ LIPS4\ Compatible
169	Gutenprint@gutenprint
170	PCL5\ Compatible
171	PCL6\ Compatible
172	PS\ Compatible
173	Preview
174] ;
175
176SYSTEM_ADD_ONS_PRINT_TRANSPORT +=
177	HP\ JetDirect
178	IPP
179	LPR
180	# Parallel\ Port
181	Print\ To\ File
182	Serial\ Port
183	USB\ Port
184;
185
186SYSTEM_ADD_ONS_SCREENSAVERS += [ FFilterByBuildFeatures
187	Butterfly
188	DebugNow
189	Flurry@mesa
190	GLife@mesa Gravity@mesa
191	Icons IFS
192	Leaves
193	Message
194	Nebula
195	Shelf
196	Spider
197] ;
198
199SYSTEM_ADD_ONS_DRIVERS_AUDIO +=
200	auich auvia
201	echo3g emuxki es1370
202	hda
203	ice1712
204	usb_audio
205	sis7018
206;
207
208SYSTEM_ADD_ONS_DRIVERS_AUDIO_OLD +=
209	#cmedia
210;
211
212SYSTEM_ADD_ONS_DRIVERS_GRAPHICS += [ FFilterByBuildFeatures
213	x86,x86_64 @{
214		ati
215		intel_810 intel_extreme
216		matrox
217		nvidia
218		radeon radeon_hd
219		via
220	}@ # x86,x86_64
221	x86 @{
222		3dfx
223		neomagic
224		s3
225	}@ # x86
226] ;
227
228SYSTEM_ADD_ONS_DRIVERS_MIDI +=
229	emuxki
230	ice1712
231	usb_midi
232;
233
234SYSTEM_ADD_ONS_DRIVERS_NET += [ FFilterByBuildFeatures
235	# WLAN drivers
236	x86,x86_64,riscv64 @{
237		aironetwifi atheroswifi
238		broadcom43xx
239		iaxwifi200 idualwifi7260
240		iprowifi2100 iprowifi2200 iprowifi3945 iprowifi4965
241		marvell88w8363 marvell88w8335
242		ralinkwifi realtekwifi
243	}@ # x86,x86_64,riscv64
244] ;
245
246SYSTEM_ADD_ONS_DRIVERS_POWER += [ FFilterByBuildFeatures
247	acpi_battery@x86,x86_64
248] ;
249
250SYSTEM_ADD_ONS_FILE_SYSTEMS +=
251	cdda
252	#googlefs
253	nfs nfs4
254	ufs2
255;
256
257# Mailbox folders and symlink
258AddDirectoryToHaikuImage home mail : home-mail.rdef ;
259AddDirectoryToHaikuImage home mail draft : home-mail-draft.rdef ;
260AddDirectoryToHaikuImage home mail in : home-mail-in.rdef ;
261AddDirectoryToHaikuImage home mail out : home-mail-out.rdef ;
262AddDirectoryToHaikuImage home mail queries : home-mail-queries.rdef ;
263AddDirectoryToHaikuImage home mail sent : home-mail-sent.rdef ;
264AddDirectoryToHaikuImage home mail spam : home-mail-spam.rdef ;
265
266# Add boot launch directory
267AddDirectoryToHaikuImage home config settings boot launch ;
268
269# Add mail provider infos.
270AddFilesToHaikuImage home config settings Mail ProviderInfo :
271	$(HAIKU_PROVIDER_INFOS) ;
272
273# Add Tracker New Templates
274AddDirectoryToHaikuImage home config settings Tracker "Tracker New Templates"
275	:  tracker-new-templates.rdef ;
276AddFilesToHaikuImage home config settings Tracker "Tracker New Templates"
277	:
278	"<tracker-new-templates>C++ header"
279	"<tracker-new-templates>C++ source"
280	"<tracker-new-templates>Makefile"
281	"<tracker-new-templates>Person"
282	"<tracker-new-templates>text file"
283;
284
285# printers
286AddDirectoryToHaikuImage home config settings printers Preview
287	: home-config-settings-printers-preview.rdef ;
288AddDirectoryToHaikuImage home config settings printers "Save as PDF"
289	: home-config-settings-printers-save-as-pdf.rdef ;
290
291# padblocker
292AddDirectoryToHaikuImage home config settings touchpad ;
293
294# shortcuts defaults
295local shortcutsSettingsFile = <settings>shortcuts_settings ;
296SEARCH on $(shortcutsSettingsFile) = [ FDirName $(HAIKU_TOP) data settings ] ;
297AddFilesToHaikuImage home config settings : $(shortcutsSettingsFile) ;
298