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
109#SYSTEM_NETWORK_PROTOCOLS += l2cap ;
110SYSTEM_BT_STACK = hci btCoreData ;
111SYSTEM_ADD_ONS_DRIVERS_BT_H2 +=
112	h2generic
113;
114
115SYSTEM_ADD_ONS_ACCELERANTS += [ FFilterByBuildFeatures
116	x86,x86_64 @{
117		ati.accelerant
118		intel_810.accelerant intel_extreme.accelerant
119		matrox.accelerant
120		nvidia.accelerant
121		radeon.accelerant radeon_hd.accelerant
122		via.accelerant
123	}@ # x86,x86_64
124	x86 @{
125		3dfx.accelerant neomagic.accelerant s3.accelerant
126	}@ # x86
127	virtio_gpu.accelerant
128] ;
129
130SYSTEM_ADD_ONS_TRANSLATORS += [ FFilterByBuildFeatures
131	AVIFTranslator@libavif
132	BMPTranslator
133	EXRTranslator@openexr
134	GIFTranslator
135	HVIFTranslator
136	ICOTranslator ICNSTranslator@libicns
137	JPEGTranslator@jpeg	JPEG2000Translator@jasper
138	PCXTranslator PNGTranslator@libpng PPMTranslator PSDTranslator
139	RAWTranslator RTFTranslator
140	SGITranslator
141	TGATranslator TIFFTranslator@tiff
142	WebPTranslator@libwebp WonderBrushTranslator
143] ;
144
145SYSTEM_ADD_ONS_MEDIA += [ FFilterByBuildFeatures
146	cortex_audioadapter.media_addon	cortex_flanger.media_addon
147	cortex_logging_consumer.media_addon
148	dvb.media_addon@x86
149	equalizer.media_addon
150	hmulti_audio.media_addon
151	#legacy.media_addon
152	mixer.media_addon
153	opensound.media_addon
154	tone_producer_demo.media_addon
155	usb_webcam.media_addon
156	video_producer_demo.media_addon	video_window_demo.media_addon
157	vst_host.media_addon
158] ;
159
160SYSTEM_ADD_ONS_MEDIA_PLUGINS += [ FFilterByBuildFeatures
161	ape_reader@x86
162	ffmpeg@ffmpeg
163	http_streamer
164	raw_decoder
165] ;
166
167SYSTEM_ADD_ONS_PRINT += [ FFilterByBuildFeatures
168	Canon\ LIPS3\ Compatible
169	Canon\ LIPS4\ Compatible
170	Gutenprint@gutenprint
171	PCL5\ Compatible
172	PCL6\ Compatible
173	PS\ Compatible
174	Preview
175] ;
176
177SYSTEM_ADD_ONS_PRINT_TRANSPORT +=
178	HP\ JetDirect
179	IPP
180	LPR
181	# Parallel\ Port
182	Print\ To\ File
183	Serial\ Port
184	USB\ Port
185;
186
187SYSTEM_ADD_ONS_SCREENSAVERS += [ FFilterByBuildFeatures
188	Butterfly
189	DebugNow
190	Flurry@mesa
191	GLife@mesa Gravity@mesa
192	Icons IFS
193	Leaves
194	Message
195	Nebula
196	Shelf
197	Spider
198] ;
199
200SYSTEM_ADD_ONS_DRIVERS_AUDIO +=
201	auich auvia
202	echo3g emuxki es1370
203	hda
204	ice1712
205	usb_audio
206	sis7018
207;
208
209SYSTEM_ADD_ONS_DRIVERS_AUDIO_OLD +=
210	#cmedia
211;
212
213SYSTEM_ADD_ONS_DRIVERS_GRAPHICS += [ FFilterByBuildFeatures
214	x86,x86_64 @{
215		ati
216		intel_810 intel_extreme
217		matrox
218		nvidia
219		radeon radeon_hd
220		via
221	}@ # x86,x86_64
222	x86 @{
223		3dfx
224		neomagic
225		s3
226	}@ # x86
227] ;
228
229SYSTEM_ADD_ONS_DRIVERS_MIDI +=
230	emuxki
231	ice1712
232	usb_midi
233;
234
235SYSTEM_ADD_ONS_DRIVERS_NET += [ FFilterByBuildFeatures
236	# WLAN drivers
237	x86,x86_64,riscv64 @{
238		aironetwifi atheroswifi
239		broadcom43xx
240		iaxwifi200 idualwifi7260
241		iprowifi2100 iprowifi2200 iprowifi3945 iprowifi4965
242		marvell88w8363 marvell88w8335
243		ralinkwifi realtekwifi
244	}@ # x86,x86_64,riscv64
245] ;
246
247SYSTEM_ADD_ONS_DRIVERS_POWER += [ FFilterByBuildFeatures
248	acpi_battery@x86,x86_64
249] ;
250
251SYSTEM_ADD_ONS_FILE_SYSTEMS +=
252	cdda
253	#googlefs
254	nfs nfs4
255	ufs2
256;
257
258# Mailbox folders and symlink
259AddDirectoryToHaikuImage home mail : home-mail.rdef ;
260AddDirectoryToHaikuImage home mail draft : home-mail-draft.rdef ;
261AddDirectoryToHaikuImage home mail in : home-mail-in.rdef ;
262AddDirectoryToHaikuImage home mail out : home-mail-out.rdef ;
263AddDirectoryToHaikuImage home mail queries : home-mail-queries.rdef ;
264AddDirectoryToHaikuImage home mail sent : home-mail-sent.rdef ;
265AddDirectoryToHaikuImage home mail spam : home-mail-spam.rdef ;
266
267# Add boot launch directory
268AddDirectoryToHaikuImage home config settings boot launch ;
269
270# Add mail provider infos.
271AddFilesToHaikuImage home config settings Mail ProviderInfo :
272	$(HAIKU_PROVIDER_INFOS) ;
273
274# Add Tracker New Templates
275AddDirectoryToHaikuImage home config settings Tracker "Tracker New Templates"
276	:  tracker-new-templates.rdef ;
277AddFilesToHaikuImage home config settings Tracker "Tracker New Templates"
278	:
279	"<tracker-new-templates>C++ header"
280	"<tracker-new-templates>C++ source"
281	"<tracker-new-templates>Makefile"
282	"<tracker-new-templates>Person"
283	"<tracker-new-templates>text file"
284;
285
286# printers
287AddDirectoryToHaikuImage home config settings printers Preview
288	: home-config-settings-printers-preview.rdef ;
289AddDirectoryToHaikuImage home config settings printers "Save as PDF"
290	: home-config-settings-printers-save-as-pdf.rdef ;
291
292# padblocker
293AddDirectoryToHaikuImage home config settings touchpad ;
294
295# shortcuts defaults
296local shortcutsSettingsFile = <settings>shortcuts_settings ;
297SEARCH on $(shortcutsSettingsFile) = [ FDirName $(HAIKU_TOP) data settings ] ;
298AddFilesToHaikuImage home config settings : $(shortcutsSettingsFile) ;
299