1# This file defines the content of the minimum Haiku image. 2 3SYSTEM_BIN = [ FFilterByBuildFeatures 4 addattr alert arp autologin 5 beep bfsinfo 6 catattr checkfs checkitout chop clear collectcatkeys copyattr 7 desklink df diskimage draggers 8 driveinfo dstcheck dumpcatalog 9 eject error 10 fdinfo ffm filepanel finddir findpaths fortune fstrim 11 ftp@libedit ftpd 12 getarch groupadd groupdel groupmod 13 hd hey 14 ifconfig iroster isvolume 15 kernel_debugger keymap keystore 16 launch_roster linkcatkeys listarea listattr listimage listdev listfont 17 listport listres listsem listusb locale logger login lsindex 18 makebootable message mimeset mkfs mkindex 19 modifiers mount mountvolume 20 netstat notify 21 open 22 package package_repo passwd pc ping ping6 pkgman prio profile ps 23 query quit 24 ramdisk rc reindex release renice resattr rmattr rmindex roster route 25 safemode screen_blanker screeninfo screenmode setarch setmime settype 26 setversion setvolume shutdown 27 strace su sysinfo system_time 28 tcptester telnet telnetd top 29 traceroute trash 30 unchop unmount 31 urlwrapper useradd userdel 32 version vmstat 33 waitfor watch writembr@x86,x86_64 xres 34] ; 35 36SYSTEM_APPS = [ FFilterByBuildFeatures 37 AboutSystem 38 BootManager@x86,x86_64 39 CharacterMap 40 Debugger@libedit DeskCalc Devices DiskProbe DiskUsage DriveSetup 41 Expander 42 NetworkStatus 43 ProcessController 44 ShowImage StyledEdit 45 Terminal TextSearch 46 Workspaces 47] ; 48 49DESKBAR_APPLICATIONS = 50 CharacterMap 51 DeskCalc Devices DiskProbe DiskUsage DriveSetup 52 Expander 53 StyledEdit 54 Terminal 55; 56 57DESKBAR_DESKTOP_APPLETS = 58 NetworkStatus 59 ProcessController 60 Workspaces 61; 62 63SYSTEM_PREFERENCES = [ FFilterByBuildFeatures 64 Appearance 65 Backgrounds 66 <preference>Deskbar 67 FileTypes 68 Keyboard Keymap 69 Locale 70 Mouse 71 Network Notifications 72 Screen Shortcuts 73 Time Touchpad <preference>Tracker 74 VirtualMemory 75] ; 76 77SYSTEM_DEMOS = ; 78 79 80rule HaikuImageGetSystemLibs 81{ 82 return 83 # libs with special grist 84 [ MultiArchDefaultGristFiles libroot.so : revisioned ] 85 [ Libstdc++ForImage ] 86 # libs with standard grist 87 [ MultiArchDefaultGristFiles [ FFilterByBuildFeatures 88 libbe.so libbsd.so libbnetapi.so 89 libdebug.so 90 libdebugger.so@primary 91 libdevice.so 92 libgnu.so 93 libnetwork.so 94 libpackage.so 95 libtextencoding.so libtracker.so libtranslation.so 96 ] ] 97 ; 98} 99 100 101rule HaikuImageGetPrivateSystemLibs 102{ 103 return [ MultiArchDefaultGristFiles [ FFilterByBuildFeatures 104 libalm.so 105 libpackage-add-on-libsolv.so 106 libroot-addon-icu.so 107 ] ] ; 108} 109 110 111SYSTEM_SERVERS = [ FFilterByBuildFeatures 112 app_server 113 debug_server dns_resolver_server 114 input_server 115 keystore_server 116 launch_daemon 117 mount_server 118 net_server notification_server 119 package_daemon power_daemon 120 registrar 121 syslog_daemon 122] ; 123 124SYSTEM_NETWORK_DEVICES = 125 ethernet 126 loopback 127; 128 129SYSTEM_NETWORK_DATALINK_PROTOCOLS = 130 <module>arp 131 ethernet_frame 132 ipv6_datagram 133 loopback_frame 134; 135 136#SYSTEM_NETWORK_PPP = ipcp modem pap pppoe KPPPManager ; 137 138SYSTEM_NETWORK_PROTOCOLS = 139 icmp icmp6 ipv4 ipv6 140 tcp 141 udp unix 142; 143 144SYSTEM_ADD_ONS_ACCELERANTS = [ FFilterByBuildFeatures 145 x86,x86_64 @{ 146 vesa.accelerant 147 }@ # x86,x86_64 148] ; 149 150SYSTEM_ADD_ONS_TRANSLATORS = 151 STXTTranslator 152; 153 154SYSTEM_ADD_ONS_LOCALE_CATALOGS = 155 <catalog-addon>plaintext 156; 157 158SYSTEM_ADD_ONS_MEDIA = ; 159 160SYSTEM_ADD_ONS_MEDIA_PLUGINS = ; 161 162SYSTEM_ADD_ONS_PRINT = ; 163 164SYSTEM_ADD_ONS_PRINT_TRANSPORT = ; 165 166SYSTEM_ADD_ONS_SCREENSAVERS = ; 167 168SYSTEM_ADD_ONS_DRIVERS_AUDIO = ; 169 170SYSTEM_ADD_ONS_DRIVERS_AUDIO_OLD = ; 171 172SYSTEM_ADD_ONS_DRIVERS_GRAPHICS = [ FFilterByBuildFeatures 173 x86,x86_64 @{ 174 vesa 175 }@ # x86,x86_64 176] ; 177 178SYSTEM_ADD_ONS_DRIVERS_MIDI = ; 179 180SYSTEM_ADD_ONS_DRIVERS_NET = [ FFilterByBuildFeatures 181 x86,x86_64 @{ 182 3com 183 atheros813x ar81xx attansic_l1 attansic_l2 184 broadcom440x broadcom570x 185 dec21xxx 186 emulex_oce 187 ipro100 ipro1000 188 jmicron2x0 189 marvell_yukon 190 nforce 191 pcnet 192 rtl8139 rtl81xx 193 sis19x sis900 syskonnect 194 via_rhine vt612x 195 }@ # x86,x86_64 196 197 etherpci 198 pegasus 199 usb_asix usb_davicom usb_ecm 200 wb840 201] ; 202 203SYSTEM_ADD_ONS_DRIVERS_POWER = [ FFilterByBuildFeatures 204 acpi_button@x86,x86_64 205] ; 206 207SYSTEM_ADD_ONS_BUS_MANAGERS = [ FFilterByBuildFeatures 208 acpi@x86,x86_64 agp_gart@x86,x86_64 ata 209 config_manager 210 firewire@x86 211 scsi isa@x86,x86_64 212 pci ps2@x86,x86_64 213 random 214 usb 215 virtio 216] ; 217 218SYSTEM_ADD_ONS_FILE_SYSTEMS = 219 attribute_overlay 220 bfs bindfs btrfs 221 exfat ext2 222 fat 223 iso9660 224 log_overlay 225 ntfs 226 packagefs 227 reiserfs 228 udf 229 write_overlay 230; 231 232# symlink to home on desktop 233AddSymlinkToHaikuImage home Desktop : /boot/home : Home ; 234 235# global settings when a package is installed in ~/config 236AddDirectoryToHaikuImage home config settings global ; 237 238# user scripts and data files 239local userBootScripts = UserBootscript UserSetupEnvironment.sample ; 240SEARCH on $(userBootScripts) = [ FDirName $(HAIKU_TOP) data config boot ] ; 241AddFilesToHaikuImage home config settings boot : $(userBootScripts) ; 242 243SEARCH on <user-first-login>first_login 244 = [ FDirName $(HAIKU_TOP) data settings ] ; 245AddFilesToHaikuImage home config settings : <user-first-login>first_login ; 246 247local etcDir = [ FDirName $(HAIKU_TOP) data etc ] ; 248local etcFiles = inputrc profile ; 249etcFiles = $(etcFiles:G=etc) ; 250SEARCH on $(etcFiles) = $(etcDir) ; 251etcFiles += <etc>termcap ; 252AddFilesToHaikuImage system settings etc : $(etcFiles) ; 253 254local profileFiles = [ Glob $(etcDir)/profile.d : *.sh ] ; 255profileFiles = $(profileFiles:G=profile-d) ; 256AddDirectoryToHaikuImage system settings etc profile.d ; 257AddFilesToHaikuImage system settings etc profile.d : $(profileFiles) ; 258 259local driverSettingsFiles = <driver-settings>kernel ; 260SEARCH on $(driverSettingsFiles) 261 = [ FDirName $(HAIKU_TOP) data settings kernel drivers ] ; 262AddFilesToHaikuImage home config settings kernel drivers 263 : $(driverSettingsFiles) ; 264 265local networkSettingsFiles = <network-settings>services 266 <network-settings>hosts ; 267 268SEARCH on $(networkSettingsFiles) 269 = [ FDirName $(HAIKU_TOP) data settings network ] ; 270AddFilesToHaikuImage system settings network : $(networkSettingsFiles) ; 271 272# fresh install indicator file for the post install scripts 273SEARCH on <post-install>fresh_install 274 = [ FDirName $(HAIKU_TOP) data system settings ] ; 275AddFilesToHaikuImage system settings : <post-install>fresh_install ; 276 277# repository config and cache files 278local repository ; 279for repository in $(HAIKU_REPOSITORIES) { 280 local config = [ on $(repository) return $(HAIKU_REPOSITORY_CONFIG_FILE) ] ; 281 local cache = [ on $(repository) return $(HAIKU_REPOSITORY_CACHE_FILE) ] ; 282 if $(HAIKU_UPDATE_ALL_PACKAGES) { 283 HAIKU_INCLUDE_IN_IMAGE on $(config) $(cache) = 1 ; 284 } 285 AddFilesToHaikuImage system settings package-repositories 286 : $(config) : $(repository:G=) ; 287 AddFilesToHaikuImage system cache package-repositories 288 : $(cache) : $(repository:G=) ; 289} 290