Size: 15974
Comment:
|
← Revision 241 as of 2021-09-23 11:54:12 ⇥
Size: 6200
Comment: change to TAG Translation
|
Deletions are marked like this. | Additions are marked like this. |
Line 2: | Line 2: |
# Put translations here # ~-Translation(s): English - [[de/Debian_GNU/Hurd|Deutsch]] | ##TAG:TRANSLATION-HEADER-START ~-[[DebianWiki/EditorGuide#translation|Translation(s)]]: [[Debian_GNU/Hurd|English]] - [[fr/Debian_GNU/Hurd|Français]]-~ ##TAG:TRANSLATION-HEADER-END |
Line 4: | Line 6: |
---- | |
Line 14: | Line 16: |
the main archive and move fully to debian-ports.org."''<<FootNote([[http://lists.debian.org/debian-devel-announce/2011/03/msg00015.html]] - Debian pushes development of the Hurd port)>> | the main archive and move fully to Debian unofficial ports."''<<FootNote([[http://lists.debian.org/debian-devel-announce/2011/03/msg00015.html]] - Debian pushes development of the Hurd port)>> |
Line 18: | Line 20: |
''Debian GNU/Hurd'' is an operating system from Debian, but which uses [[http://www.gnu.org/software/hurd/|GNU Hurd]], which a set of servers, running on top of the GNU Mach microkernel instead of the kernel named ''Linux'' (thus the name Debian GNU/Hurd). Some day, most applications will exist both in ''Debian GNU/Hurd'' and in ''[[DebianGnuLinux|Debian GNU/Linux]]''. | ''Debian GNU/Hurd'' is an operating system from Debian, but which uses [[http://www.gnu.org/software/hurd/|GNU Hurd]], which is a set of servers, running on top of the GNU Mach microkernel instead of the kernel named ''Linux'' (thus the name Debian GNU/Hurd). Some day, most applications will exist both in ''Debian GNU/Hurd'' and in ''[[DebianGnuLinux|Debian GNU/Linux]]''. |
Line 39: | Line 41: |
* [[http://lists.debian.org/debian-devel-announce/2011/07/msg00002.html|Last bits from the project]] | * [[https://lists.debian.org/debian-devel-announce/2014/05/msg00006.html|Last bits from the project]] |
Line 45: | Line 47: |
== Goals for releasing in wheezy == | * [[http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=debian-hurd@lists.debian.org;tag=hurd|Bugs]] |
Line 47: | Line 49: |
* buildd * security * DSA * proper dhcp support in installed system * use ifup/ifdown instead of translators entry? * debian-ports packages need to be integrated in the main archive. * binutils * DebianBug:629866 * Not critical, can live without * cardmgr-gnumach * wifi, can live without * console-driver-xkb * we should probably just integrate it in the hurd package * See the concerns on the mailing list archive (bug-hurd, "XKB's keymaps for the Hurd console") * gcc-4.4 gcc-4.6 * DebianBug:629866 * not critical, can live without * ghc6 * Difficult hang during build * uninstallable in ports * gopherfs * ITP: hurdextras? * grub2 * decide on partition stuff, and submit * (./) guile-1.8 * linked with -lpthread, to avoid dlopen(lpthread) bug, DebianBug:646544 * DebianBug:630415 shows that guile-2.0 will have pthread enabled anyway. * to remove * (./) hdf5 * DebianBug:627896 * to remove * hyperestraier * DebianBug:558586 * for w3m. * icon * DebianBug:654381 * for lyx. * ifupdown * TODO * isc-dhcp * DebianBug:616290 * Need to discuss directly with upstream * libdrm * This is just a stub. integrate in the main archive? * Needs to be worked on! * libusb * This is just a stub. integrate in the main archive? * Needs to be worked on! * lockdev * TODO * mx * DebianBug:648187 * netio * ITP: hurdextras? * parted * decide on partition stuff, and submit * pulseaudio * --(see https://bugs.freedesktop.org/show_bug.cgi?id=42715 )-- * needs also SA_NOCLDWAIT * needs symbol fixes in the Debian packaging * DebianBug:573339 * qdbm * make check fails due to unimplemented msync(), DebianBug:648663 * does not honor nocheck in DEB_BUILD_OPTIONS, DebianBug:648649 * random-egd * make it an alternative to Marcus' C implementation * can live without * ruby1.9.1 * (./) Fix {{{__libc_stack_end}}} in glibc, pending * (./) apply patch to fix struct dirent size once upstream agreed. * fix PATH_MAX issue, DebianBug:648055 * sane-backends-extras * can live without * screen * trivial fix on DebianBug:522689 , uploaded to experimental * (./) sidplay-libs, to remove * disable hardsid installation, DebianBug:654826 * tarfs * ITP: hurdextras? * webkit * Hacked around PTHREAD_KEYS_MAX * DebianBug:649192 * wireless-tools-gnumach * just for wifi, can live without * Be able to install at least the base from official mirror (should be almost done, missing grub/parted, dhcp) * Integrate DDE to get nowadays' network support. * Get Xorg + gnome/kde/xfce (xfce should work, kde is missing working dbus (due to local socket auth and bugs in select() cornercases)) + some webbrowser working (iceweasel 9 works, though not https). * (./) Fix ext2fs uncleanness at reboot [[http://www.gnu.org/software/hurd/open_issues/sync_but_still_unclean_filesystem.html]] * Switch to plain sysv startup? * (./) Enable console by default? (we now have proper kernel message relaying) * fix "su" to root discrepancy (PATH does not include sbin etc.) * Good archive coverage. * We're at 70%, kfreebsd is at 88%. Although probably not reachable, we can probably do better with * ghc * mono * gnat * (./) ruby1.9.1 |
== Goals for releasing in jessie == |
Line 145: | Line 51: |
== ghc == | This is on a separate page: |
Line 147: | Line 53: |
Follow http://hackage.haskell.org/trac/ghc/wiki/Building/Porting Make sure to use the same path in the host and in the target for the compilation. For the triplet, use i386-unknown-gnu. Better cross-build from an i386 host. Don't use perl boot: the package is already "booted". After having run make in the host and transferred the files to the target, fixes are needed in files libraries/unix/dist-install/build/System/Posix/*.hs, basically all lines postfixed by {-# LINE 334 "librari...} Notably: the offsets in ./libraries/unix/dist-install/build/System/Posix/Files.hs, use the following instead, and fix allocation from 96 to 128. {{{ deviceID (FileStatus stat) = unsafePerformIO $ withForeignPtr stat $ ((\hsc_ptr -> peekByteOff hsc_ptr 4)) {-# LINE 314 "libraries/unix/./System/Posix/Files.hsc" #-} fileID (FileStatus stat) = unsafePerformIO $ withForeignPtr stat $ ((\hsc_ptr -> peekByteOff hsc_ptr 12)) {-# LINE 316 "libraries/unix/./System/Posix/Files.hsc" #-} fileMode (FileStatus stat) = unsafePerformIO $ withForeignPtr stat $ ((\hsc_ptr -> peekByteOff hsc_ptr 28)) {-# LINE 318 "libraries/unix/./System/Posix/Files.hsc" #-} linkCount (FileStatus stat) = unsafePerformIO $ withForeignPtr stat $ ((\hsc_ptr -> peekByteOff hsc_ptr 32)) {-# LINE 320 "libraries/unix/./System/Posix/Files.hsc" #-} fileOwner (FileStatus stat) = unsafePerformIO $ withForeignPtr stat $ ((\hsc_ptr -> peekByteOff hsc_ptr 36)) {-# LINE 322 "libraries/unix/./System/Posix/Files.hsc" #-} fileGroup (FileStatus stat) = unsafePerformIO $ withForeignPtr stat $ ((\hsc_ptr -> peekByteOff hsc_ptr 40)) {-# LINE 324 "libraries/unix/./System/Posix/Files.hsc" #-} specialDeviceID (FileStatus stat) = unsafePerformIO $ withForeignPtr stat $ ((\hsc_ptr -> peekByteOff hsc_ptr 24)) {-# LINE 326 "libraries/unix/./System/Posix/Files.hsc" #-} fileSize (FileStatus stat) = unsafePerformIO $ withForeignPtr stat $ ((\hsc_ptr -> peekByteOff hsc_ptr 44)) {-# LINE 328 "libraries/unix/./System/Posix/Files.hsc" #-} accessTime (FileStatus stat) = unsafePerformIO $ withForeignPtr stat $ ((\hsc_ptr -> peekByteOff hsc_ptr 52)) {-# LINE 330 "libraries/unix/./System/Posix/Files.hsc" #-} modificationTime (FileStatus stat) = unsafePerformIO $ withForeignPtr stat $ ((\hsc_ptr -> peekByteOff hsc_ptr 60)) {-# LINE 332 "libraries/unix/./System/Posix/Files.hsc" #-} statusChangeTime (FileStatus stat) = unsafePerformIO $ withForeignPtr stat $ ((\hsc_ptr -> peekByteOff hsc_ptr 68)) {-# LINE 334 "libraries/unix/./System/Posix/Files.hsc" #-} }}} the values in libraries/unix/dist-install/build/System/Posix/IO.hs, use the following instead: {{{ flags = (if appendFlag then (256) else 0) .|. {-# LINE 189 "libraries/unix/./System/Posix/IO.hsc" #-} (if exclusiveFlag then (32) else 0) .|. {-# LINE 190 "libraries/unix/./System/Posix/IO.hsc" #-} (if nocttyFlag then (0) else 0) .|. {-# LINE 191 "libraries/unix/./System/Posix/IO.hsc" #-} (if nonBlockFlag then (8) else 0) .|. {-# LINE 192 "libraries/unix/./System/Posix/IO.hsc" #-} (if truncateFlag then (65536) else 0) {-# LINE 193 "libraries/unix/./System/Posix/IO.hsc" #-} (creat, mode_w) = case maybe_mode of Nothing -> (0,0) Just x -> ((64), x) {-# LINE 197 "libraries/unix/./System/Posix/IO.hsc" #-} open_mode = case how of ReadOnly -> (1) {-# LINE 200 "libraries/unix/./System/Posix/IO.hsc" #-} WriteOnly -> (2) {-# LINE 201 "libraries/unix/./System/Posix/IO.hsc" #-} ReadWrite -> (3) {-# LINE 202 "libraries/unix/./System/Posix/IO.hsc" #-} }}} {{{ fdOption2Int :: FdOption -> CInt fdOption2Int CloseOnExec = (1) {-# LINE 320 "libraries/unix/./System/Posix/IO.hsc" #-} fdOption2Int AppendOnWrite = (256) {-# LINE 321 "libraries/unix/./System/Posix/IO.hsc" #-} fdOption2Int NonBlockingRead = (8) {-# LINE 322 "libraries/unix/./System/Posix/IO.hsc" #-} fdOption2Int SynchronousWrites = (1024) {-# LINE 323 "libraries/unix/./System/Posix/IO.hsc" #-} }}} {{{ throwErrnoIfMinus1_ "getLock" (c_fcntl_lock fd (7) p_flock) }}} {{{ allocaLock (lockreq, mode, start, len) io = allocaBytes (20) $ \p -> do {-# LINE 395 "libraries/unix/./System/Posix/IO.hsc" #-} ((\hsc_ptr -> pokeByteOff hsc_ptr 0)) p (lockReq2Int lockreq :: CShort) {-# LINE 396 "libraries/unix/./System/Posix/IO.hsc" #-} ((\hsc_ptr -> pokeByteOff hsc_ptr 4)) p (fromIntegral (mode2Int mode) :: CShort) {-# LINE 397 "libraries/unix/./System/Posix/IO.hsc" #-} ((\hsc_ptr -> pokeByteOff hsc_ptr 8)) p start {-# LINE 398 "libraries/unix/./System/Posix/IO.hsc" #-} ((\hsc_ptr -> pokeByteOff hsc_ptr 12)) p len {-# LINE 399 "libraries/unix/./System/Posix/IO.hsc" #-} io p }}} {{{ lockReq2Int :: LockRequest -> CShort lockReq2Int ReadLock = (1) {-# LINE 403 "libraries/unix/./System/Posix/IO.hsc" #-} lockReq2Int WriteLock = (2) {-# LINE 404 "libraries/unix/./System/Posix/IO.hsc" #-} lockReq2Int Unlock = (3) {-# LINE 405 "libraries/unix/./System/Posix/IO.hsc" #-} }}} {{{ bytes2ProcessIDAndLock p = do req <- ((\hsc_ptr -> peekByteOff hsc_ptr 0)) p {-# LINE 409 "libraries/unix/./System/Posix/IO.hsc" #-} mode <- ((\hsc_ptr -> peekByteOff hsc_ptr 4)) p {-# LINE 410 "libraries/unix/./System/Posix/IO.hsc" #-} start <- ((\hsc_ptr -> peekByteOff hsc_ptr 8)) p {-# LINE 411 "libraries/unix/./System/Posix/IO.hsc" #-} len <- ((\hsc_ptr -> peekByteOff hsc_ptr 12)) p {-# LINE 412 "libraries/unix/./System/Posix/IO.hsc" #-} pid <- ((\hsc_ptr -> peekByteOff hsc_ptr 16)) p {-# LINE 413 "libraries/unix/./System/Posix/IO.hsc" #-} return (pid, (int2req req, int2mode mode, start, len)) }}} {{{ int2req :: CShort -> LockRequest int2req (1) = ReadLock {-# LINE 417 "libraries/unix/./System/Posix/IO.hsc" #-} int2req (2) = WriteLock {-# LINE 418 "libraries/unix/./System/Posix/IO.hsc" #-} int2req (3) = Unlock {-# LINE 419 "libraries/unix/./System/Posix/IO.hsc" #-} int2req _ = error $ "int2req: bad argument" }}} {{{ throwErrnoIfMinus1_ "setLock" (c_fcntl_lock fd (8) p_flock) }}} {{{ (c_fcntl_lock fd (9) p_flock) }}} libraries/unix/dist-install/build/System/Posix/Resource.hs {{{ hard <- ((\hsc_ptr -> peekByteOff hsc_ptr 4)) p_rlimit }}} {{{ ((\hsc_ptr -> pokeByteOff hsc_ptr 4)) p_rlimit (packRLimit hard False) }}} {{{ packResource ResourceOpenFiles = (8) }}} {{{ packResource ResourceTotalMemory = (10) }}} {{{ unpackRLimit :: CRLim -> ResourceLimit unpackRLimit (2147483647) = ResourceLimitInfinity {-# LINE 102 "libraries/unix/./System/Posix/Resource.hsc" #-} {-# LINE 103 "libraries/unix/./System/Posix/Resource.hsc" #-} -- unpackRLimit (4294967295) = ResourceLimitUnknown {-# LINE 104 "libraries/unix/./System/Posix/Resource.hsc" #-} -- unpackRLimit (4294967295) = ResourceLimitUnknown {-# LINE 105 "libraries/unix/./System/Posix/Resource.hsc" #-} }}} {{{ packRLimit :: ResourceLimit -> Bool -> CRLim packRLimit ResourceLimitInfinity _ = (2147483647) {-# LINE 110 "libraries/unix/./System/Posix/Resource.hsc" #-} {-# LINE 111 "libraries/unix/./System/Posix/Resource.hsc" #-} --packRLimit ResourceLimitUnknown True = (4294967295) {-# LINE 112 "libraries/unix/./System/Posix/Resource.hsc" #-} --packRLimit ResourceLimitUnknown False = (4294967295) {-# LINE 113 "libraries/unix/./System/Posix/Resource.hsc" #-} }}} And then run make again, and copy ./libraries/unix/dist-install/build/System/Posix/*.hc (but only these files) to the target. In <T>/mk/build.mk, append -lffi to ghc_stage2_v_EXTRA_CC_OPTS and -lffi -lncurses -ltermcap to utils/ghc-pkg_dist-install_v_EXTRA_CC_OPTS |
* [[Debian_GNU/Hurd_TODO]] |
Line 349: | Line 57: |
* upgrade libfuse compatibility to >= 2.6.5, with fuse_lowlevel.h, [[http://www.gnu.org/software/hurd/hurd/libfuse.html]] * add cpuid-based autoloading of libc0.3-i686 * add autoloading of libc0.3-xen == Packages in debian-ports == Packages marked with <!> need to be integrated in the main archive. * (hurd-any) cardmgr-gnumach * wifi, can live without * postpone * dash * DebianBug:755446 * firefox * build fixes * DebianBug:822175 * gdb * Fixed upstream * gxine * No change, just built against fixed samba * TOREMOVE: iceweasel * icewm * build fix, TODO: submit * ldb * build with patched tdb * libpciaccess * patched to use PCI arbiter * lightdm * Drop consolekit dependency DebianBug:924358 * TOREMOVE: lwip * mplayer2 * Hack around PATH_MAX * ntp * Ship ntpdate at least. * openvpn * fix ifconfig usage * pciutils * patched to use PCI arbiter * policykit-1 * Drop consolekit dependency DebianBug:918446 * (hurd-any) random-egd * make it an alternative to Marcus' C implementation * can live without * can postpone * rsyslog * DebianBug:900718 * samba * PIPE_BUF: DebianBug:759010 * TODO: submit patch for faketime usage * tdb * DebianBug:759008 * (hurd-any) util-hurd * (hurd-any) wireless-tools-gnumach * just for wifi, can live without * postpone * x86info * DebianBug:468696 |
|
Line 386: | Line 151: |
* [[https://jenkins.debian.net/view/g-i-installation/job/g-i-installation_debian_sid_daily_hurd_lxde/|Daily d-i jenkins]] |
|
Line 389: | Line 156: |
CategoryPermalink | CategoryPermalink CategoryPorts |
Translation(s): English - Français
Debian > Debian GNU > Debian GNU/Hurd
This page attempts to be a reference for all resources related to Debian GNU/Hurd that can be useful for users and developers. Feel free to add more stuff as you see fit.
"In a discussion with the Debian Hurd porters it was decided that the Hurd port stays on FTPMaster until Wheezy is released. Should they have managed to get the port into a state that it is released together with all the others (probably as a technology preview), it is kept in the archive. Should they not manage this the port will be removed from the main archive and move fully to Debian unofficial ports."1
What is Debian GNU/Hurd ?
Debian GNU/Hurd is an operating system from Debian, but which uses GNU Hurd, which is a set of servers, running on top of the GNU Mach microkernel instead of the kernel named Linux (thus the name Debian GNU/Hurd). Some day, most applications will exist both in Debian GNU/Hurd and in Debian GNU/Linux.
Basic info
- Installation and testing:
http://www.debian.org/ports/hurd/hurd-install
Debian "Sid" debian-installer images available http://people.debian.org/~sthibault/hurd-i386/installer/cdimage/.
- This is the prefered method of install.
Pre-build image files (*.img.*) at http://people.debian.org/~sthibault/hurd-i386/
?Debian_GNU/Hurd_FAQ
TheHurd page. (Merge?)
IRC channel: http://www.gnu.org/software/hurd/irc.html
#hurd on irc.freenode.net
#debian-hurd on irc.debian.org
Goals for releasing in jessie
This is on a separate page:
Goals for later
- IPv6 support in d-i (after it is settled for linux).
upgrade libfuse compatibility to >= 2.6.5, with fuse_lowlevel.h, http://www.gnu.org/software/hurd/hurd/libfuse.html
- add cpuid-based autoloading of libc0.3-i686
- add autoloading of libc0.3-xen
Packages in debian-ports
Packages marked with need to be integrated in the main archive.
- (hurd-any) cardmgr-gnumach
- wifi, can live without
- postpone
- dash
- firefox
- build fixes
- gdb
- Fixed upstream
- gxine
- No change, just built against fixed samba
- TOREMOVE: iceweasel
- icewm
- build fix, TODO: submit
- ldb
- build with patched tdb
- libpciaccess
- patched to use PCI arbiter
- lightdm
Drop consolekit dependency 924358
- TOREMOVE: lwip
- mplayer2
- Hack around PATH_MAX
- ntp
- Ship ntpdate at least.
- openvpn
- fix ifconfig usage
- pciutils
- patched to use PCI arbiter
- policykit-1
Drop consolekit dependency 918446
- (hurd-any) random-egd
- make it an alternative to Marcus' C implementation
- can live without
- can postpone
- rsyslog
- samba
PIPE_BUF: 759010
- TODO: submit patch for faketime usage
- tdb
- (hurd-any) util-hurd
- (hurd-any) wireless-tools-gnumach
- just for wifi, can live without
- postpone
- x86info
Developer info
- DD-accessible machines running GNU/Hurd:
hurd-i386: see ArchiveQualification/hurd-i386
Patches that are only needed for Debian (either because they're fixed-upstream, or because of their Debian-specific nature)
CategoryPermalink CategoryPorts
http://lists.debian.org/debian-devel-announce/2011/03/msg00015.html - Debian pushes development of the Hurd port (1)