Commit Graph

274 Commits

Author SHA1 Message Date
Augustin Cavalier
ae8d7152a0 docs/develop: Updates to Release Cookbook.
Add/update some steps, etc.
2024-08-20 13:38:10 -04:00
Augustin Cavalier
94c66b276e docs/develop: Rename release "milestones" page to "cookbook".
This more accurately reflects what it contains, as well as
mirrors what it used to be called when it was on Trac.
2024-08-20 13:13:24 -04:00
Jim906
342a1b221b FAT: revise using code from FreeBSD
* Rewrite most hook functions, modeling many after FreeBSD hooks and
  making use of support functions ported from FreeBSD. As it stands
  now, most of the FreeBSD driver files are present with minimal
  changes, with a pseudo-BSD compatability layer added to make them
  work in Haiku. Performance is not what it could be if the BSD code
  was rewritten to interface directly with the Haiku kernel, but under
  the current approach the driver might be easier to maintain in terms
  of porting future FreeBSD bugfixes.
* Add support for FAT in userlandfs. Aside from being useful for
  debugging, the userlandfs module provides better filename support
  for characters that are not in code page 850, because it can link
  libiconv.
* Update the fat_test.sh script to use dosfstools to format the tested
  device, instead of the internal dosfs_initialize hook. The script
  is written to test specific cluster sizes, but the initialize hook
  still does not support user-specified cluster sizes.
* Coding guidelines: lightly-modified BSD files and lightly-modified
  original Haiku driver files have not been revised to adhere to the
  Haiku style guidelines. For BSD files, this is meant to make it
  easier to compare with the FreeBSD repository when merging future
  FreeBSD patches. For existing driver files, this is to highlight the
  functional changes made in this change request (I can submit a
  separate patch later to clean up style in these files). Also, some
  #include lines are not alphbetized (they are instead ordered like
  they would be in FreeBSD, because one header relies on another).

Change-Id: I92521d4b700d7aa52fe6c664cf8f83a4d9395809
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7660
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2024-07-09 06:40:55 +00:00
Adrien Destugues
9f3bdf3d03 rc: migrate documentation to Haiku internals pages 2024-04-29 13:58:59 +02:00
Anant Verma
084e24d0bf docs/develop: minor improvements in the fs section
Change-Id: Ie94dbc1339facbee59080d85b6938f2c160eb05e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7368
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
2024-02-02 19:11:31 +00:00
PulkoMandy
e92b4d3a27 docs/develop: add sourcetree layout document
Largely based on a_brief_introduction_to_our_source_repository_layout.html
from the website, revised and updated. I will delete the one from the
website and put a redirect to here once this is merged.

Change-Id: I06657bbea4c16df7bff1f2357cffd2ec8a63c65a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7236
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
2023-12-24 02:56:51 +00:00
Alexander von Gluck IV
3634f14235 docs/develop/ide: A quick guide for haiku code completion
* Works under a Linux "cross-compile" environment
* We can't check in compile_commands.json unforunetly because it
  highly depends on your build environment
* An in-tree .clangd is a thing, but our includes are complex
  and directory-spefific.
* Thanks to Pulkomandy for adding the flag to jam to do this!

Change-Id: I3be4084c43f7b822bb04ea7ec527c5fbe03d7289
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7158
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
2023-12-05 20:02:07 +00:00
Niels Sascha Reedijk
d2edfdd11d docs: document the steps to update GCC buildtools
Change-Id: Iaa41194e0f76594efd504b65f3565b22743dce34
2023-08-12 07:59:29 +01:00
Niels Sascha Reedijk
e10dd8e99a Dev docs: update instructions on generating build-packages repo
This is now updated for the modern k8s infrastructure.

Change-Id: Ib468eb0bdf4b0746c3f5d8692d9353d0cd9e923a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6768
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
2023-08-02 07:09:03 +00:00
David Karoly
ddc88ea85a docs: remove TODO item for ARM Accessed and Modifed page flags
Change-Id: I497c054e4a58a39804e2a1ef7a5d30eb8cc73130
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6611
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
2023-06-19 20:49:48 +00:00
Zardshard
a127b88ecb Debugger: Add UML class diagram
The debugger.xmi file is the source file meant to be opened by
Umbrello. The other files are generated.

The docbook file is exported from Umbrello and the .rst file is
converted from it using Pandoc, with minor manual fixes.

Change-Id: Idc831d15c6121c21ebb170c245bc8ab97986702e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6483
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
2023-06-08 11:46:23 +00:00
PulkoMandy
b289c1e406 Fix typo
Change-Id: I99137ae4d9cc40aa3142220191e7a0f638c60367
2023-04-29 22:46:03 +02:00
Pascal Abresch
fb222ad5f7 develop docs: fix packages/Readme links
Change-Id: I865751fe47ffbb655f8f3d2de8af656fc872490a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6190
Reviewed-by: nephele <nep@packageloss.eu>
Tested-by: Automation <automation@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
2023-03-19 00:59:32 +00:00
PulkoMandy
2ab05dc925 docs/develop: a few notes about invalidation, view bitmaps, and overlays
Following some IRC discussions, it seems useful to have this written
down somewhere.

Change-Id: Ic02686948d989bff2fa671a3831ba5aed1515d25
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6085
Tested-by: Automation <automation@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
2023-03-09 12:45:34 +00:00
PulkoMandy
53df6323c8 docs/develop: reorganize app_server documentation
Separate the "interface specification" into multiple individual, shorter
pages. Also update some outdated parts and replace references to
OpenBeOS with Haiku.

Change-Id: I86baa9a78c5f7a8a3c4c7aa3ac2992714afecae6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6084
Tested-by: Automation <automation@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
2023-03-09 12:45:34 +00:00
PulkoMandy
0c062f469a docs/develop: add some documentation about our Jam usage
Change-Id: I18c1fd3192468a14205bf192b3d1431397d1cc1d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6086
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2023-03-04 16:02:36 +00:00
Adrien Destugues
c8a1650c73 docs/develop: documentation about the C library and features.h
Change-Id: Id87081fbf97e8b427f7a235d969732177d697551
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6045
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
2023-02-08 08:18:59 +00:00
Adrien Destugues
9d51367f16 Improve "sourcecode" page of docs/develop/ a bit
Prepare for adding section about getting the sources and submitting
patches (to be converted from the existing docs on the website)
2023-01-20 13:01:19 +01:00
Adrien Destugues
6b1db710f7 docs/develop: introduce intermediate index for each section
The table of content of the top level will include everything that's up
to 2 levels down. Currently this results in a lot of pages and no clear
organization.

Extra index pages allow for more intermediate levels, resulting in less
things being listed in the main page. This way the organization is a bit
clearer, even if this is still not great due to many missing pages and
sections in the documentation currently.

Change-Id: I5bbdd96b3c2ff3334b9ad1b86fd9e7fb00fd63a6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6008
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2023-01-19 22:09:22 +00:00
Adrien Destugues
d79d9a8524 Developers doc: fix all Sphinx generation warnings 2023-01-13 12:58:45 +01:00
Augustin Cavalier
233c0ffd47 docs/develop: Add missed item to the branch steps and combine the last two. 2022-11-08 12:45:03 -05:00
Alexander von Gluck IV
28ca540854 docs/release: Bump these changes over to milestones
* There was a bit of overlap

Change-Id: I97b39a38cdb6b3b96aafb42fa1b5a6ed447a6d3c
2022-11-04 15:00:02 -05:00
Alexander von Gluck IV
b5e4f1faa3 docs/release: Extend release engineering documentation
Change-Id: Iade40740e6dfbc7ea5f3f74f572d70443f94841a
2022-11-04 14:38:14 -05:00
Augustin Cavalier
20136c336c docs/develop: Linkify version-change hrev. 2022-10-31 23:29:20 -04:00
Mashijams
a3d8402537 Docs: xfs
Change-Id: I2da4c778801e4c34ffe75d19c0c5c9323979f5f0
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5533
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
2022-08-08 15:25:26 +00:00
PulkoMandy
264f77da03 docs/develop/release: add the info from the ReleaseCookbook Trac wiki page
The corresponding Trac wiki page can be deleted once this is merged.

Some of this information is a little out of date, help is welcome on
updating it.

Change-Id: I9157b140bcb5de3fed3c95d994745b5a1cbee1f6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5477
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
2022-07-24 14:11:55 +00:00
PulkoMandy
3c1a967efb docs/develop: add some documentation for userlandfs and FUSE
Change-Id: Ic8ee1bb5b3ca3e926251db766a120c48b96af45c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5488
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2022-07-20 20:34:28 +00:00
PulkoMandy
abc159e3fd docs/develop: explain vendor branches for gcc and buildtools
Change-Id: I9bb3b4efd2d02013da1ec6656adb49cd7d050e86
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5476
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: nephele <nep@packageloss.eu>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
2022-07-17 07:37:53 +00:00
Alexander von Gluck IV
fd482d0a57 docs/develop: Introduce release engineering documentation
* This has been floating around on trac forever.  We should formalize
  these steps to help future Haiku releases to be successful.

Change-Id: I5881e27a23e66a18539d04c5977593a827f8fcef
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5441
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2022-07-15 15:31:13 +00:00
Alexander von Gluck IV
6ec74693c7 docs/develop: Document how to build source hpkgs
Change-Id: I86a6cef5773c543e1b46d85091b9e73a7e3c016c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5342
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2022-05-25 12:48:27 +00:00
David Karoly
dea541c4f4 docs/arm: update info for Raspberry Pi 2 & 3
Add some more details on peripherals.

Change-Id: I65e6ce5ff32cd8b40b95a707460a870f0f4d688e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5239
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2022-04-23 18:18:13 +00:00
David Karoly
e5165df648 docs/arm: remove TODO item for soft-float
soft-float/hard-float mismatch issues are tackled by introducing
libgcc-boot, libgcc_eh-boot, libsupc++-boot libraries in the
gcc_bootstrap package

Change-Id: I4d3eff12c4c78804cd1dd32d6c1c5c8a9b5ad51a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5238
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2022-04-23 18:17:19 +00:00
PulkoMandy
d0c94afe0c docs/develop: fix incorrect title level 2022-04-23 13:59:49 +02:00
David Karoly
ba0c49863a docs/arm: add info on Raspberry Pi 4
Change-Id: Ic8cc47394c9e49f05e30b5ba54ff70557b1e2c47
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5237
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2022-04-23 09:18:03 +00:00
David Karoly
097f72e92c docs/arm: update info for Raspberry Pi 2
Change-Id: I968752c3eae56bee099f3cec5db7856dbe007592
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5232
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2022-04-22 10:50:59 +00:00
David Karoly
be7333a8d7 docs/arm: add info on Raspberry Pi 3
Change-Id: Iee7bd2f99dfc11930a97683c2cf30c51110d6726
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5229
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2022-04-22 10:00:39 +00:00
David Karoly
2ba1112f62 docs/arm: remove TODO item for KDL hangman
It seems to be already implemented.

Welcome to Kernel Debugging Land...
Thread 14 "main2" running on CPU 0
frame            caller     <image>:function + offset
 0 801bc898 (+2145662824) 801b9734   <kernel_arm>  (nearest) + 0x00
kdebug> kdlhangman
word> ____
hangman> e
word> ___e
hangman> t
  ____
  |   |
  |   O
  |
  |
  |
word>

Change-Id: I40aa484a69a76482ddd8508d493b6c52c11558fb
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5228
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2022-04-22 09:46:30 +00:00
PulkoMandy
b5ab38ecf0 Add some docs about our compilers and patches done to them.
Change-Id: I60e0960499aec789ae6240eec949249adb2e35ad
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5224
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
2022-04-21 17:53:48 +00:00
Adrien Destugues
7b7cc2944b Allwinner A10 docs: fix broken link
Change-Id: I40d3bebd2f70def0a4074f2bec74c574f44d46cd
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5101
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
2022-03-14 21:35:41 +00:00
David Karoly
8d743ebd60 docs/arm: remove TODO item for bootloader memory map handling
Change-Id: Iabcada696eb87500dbcdb03cf742607e0e525707
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4892
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
2022-01-27 20:25:22 +00:00
David Karoly
f06c2e7f5c docs/arm: remove TODO item for early page tables
Page directory and early page tables are allocated using
platform_allocate_region() and they don't need to be identity mapped
since commits 9103470bd and a7c69a4b1.

Change-Id: Ia7fcf1dd2fa34262e013f651139ad252a1ac9113
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4886
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2022-01-27 02:01:41 +00:00
David Karoly
dc3e1761e6 docs/arm: remove TODO item for serial port mapping
UART is mapped to kernel virtual address range since commit f5f10a9ec
so it does not overlap with user address range any more.

Change-Id: If8e18904fcddcbef1ccdc91e526d0e581f61e085
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4856
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2022-01-12 12:21:11 +00:00
PulkoMandy
d1ecc0955f sparc docs: write down some more useful things
These are better here than in my bash history...

Change-Id: Iab8940f4efed950e26a8bad29cb8954464270e8f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4645
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2021-10-22 20:23:01 +00:00
Adrien Destugues
a5061ecec5 Generate developer docs with Sphinx
An effort was started some time ago to consolidate all internal
documentation in the git tree. However, this was just an accumulation of
files in various formats without any strucutre or way to browse it,
which results in no one even knowing that we have docs here.

This converts most of the files to restructuredtext and uses Sphinx to
generate an HTML browsable user manual (with a table of content and a
first attempt to put things in a global hierarchy).

There are almost no changes to the documentation content in this commit
(some obviously obsolete things were removed). The plan is to get the
toolchain up and running to make these docs easily available, and only
then see about improving the content. We can migrate some things off the
wiki and website, and rework the table of contents to have some more
hierarchy levels because currently it's a bit messy.

Change-Id: I924ac9dc6e753887ab56f18a09bdb0a1e1793bfd
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4370
Reviewed-by: Niels Sascha Reedijk <niels.reedijk@gmail.com>
2021-08-27 11:41:17 +00:00
Adrien Destugues
38e5e3401b repository build readme: add a missing dependency to instructions 2021-04-15 22:47:51 +02:00
Alexander von Gluck IV
37bebb702a docs: Update build-repository documentation
Change-Id: I4566c6e93dca4701eda19ba512e20b0f224956e7
2021-04-15 15:06:10 -05:00
Alexander G. M. Smith
3376ed1a72 Package Kit: Proper Installation for First Boot Packages
Do the final installation operations for all the packages in the
/system/packages directory when the OS is booted for the first time.

This will run their post-install scripts, create users, groups and generate
settings files (marked with a package version attribute).  Previously we just
ran all the shell scripts found in the /system/boot/post-install directory
(don't do that as much now).

Fixes bug #14382

This patch has simpler code flow in CommitTransactionHandler::_ApplyChanges
Tested on 32 and 64 bit systems.  Once it's official, need to remove the
open_ssh redundant post-install script that creates users etc. from HaikuPorts.
Now we can notice bugs like package version attributes on settings files aren't
fully working. :-)

Didn't remove special case for add_catalog_entry_attributes.sh since it
still does stuff that the build system doesn't do.  Might be able to add
that script as part of the Haiku.hpkg.  See change 3751 for removing it,
https://review.haiku-os.org/c/haiku/+/3751

Change-Id: I3807b78042fdb70e5a79eca2e2a45816ece0236f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2342
Reviewed-by: Alexander G. M. Smith <agmsmith@ncf.ca>
Reviewed-by: Niels Sascha Reedijk <niels.reedijk@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2021-03-14 09:10:18 +00:00
Adrien Destugues
4dcdff4fe3 Update "boot process specs" documentation
Quite a lot has happened since this was initially written.

Change-Id: Iad68ea821733ab7489d2f9713857d2752b80356d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3674
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2021-01-27 19:51:07 +00:00
Adrien Destugues
cef80a1fb7 devfs: translate partition offsets in B_TRIM_DEVICE
Fixes bfs part of #10336. Untested on SATA (don't have a testing drive
to sacrifice) but working fine on SD/MMC.

This requires moving the copy from kernel to userland into the devfs. As
a result the code in the disk drivers becomes a bit simpler.

Also add some documentation for the common ioctls to implement for a
disk device.

Change-Id: Ie84b6a1d293828d33902a64b3c9d4b19aa6eacb1
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3640
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2021-01-23 12:20:59 +00:00
Adrien Destugues
b9e03b90a5 sd/mmc: Update the documentation to reflect the current state 2021-01-06 20:06:17 +01:00