Last week in BSD
Releases: noneOther news:FreshPorts, FreeBSD, DragonFly BSD, BSDnow, NetBSD, POSIX, MirOS, Wallpaper, DiscoverBSD
News
Not all ports have packages
Sir l33tname asked: @DLangille is it possible to show on
freshports when there is no package for a port? — Sir l33tname
(@l33tname) December 29, 2015 That’s a good question. It took some more
questions on IRC for me to figure it out. Here is what I know. The port
in question is net-p2p/btsync and [...]
The BSD Black Box | BSD Now 122
This week on the show, we will be interviewing Alex Rosenberg to
discuss his work on LLVM/Clang & his work with BSD at a large
console gaming company. (Hint, it wasn’t Microsoft). All this, and the
latest BSD news coming your way right now!
Introducing HardenedBSD's New Binary Updater
/usr/sbin/hbsd-update
and /usr/sbin/hbsd-update-build
, which apply and build update packages, respectively. This work was sponsored by G2, Inc, who has an immediate need for binary updates.Please note that this feature is still experimental.
Here's the design of the update mechanisms:
Goals
Stable pkgsrc-2015Q4 branch released
The pkgsrc developers are proud to announce the pkgsrc-2015Q3 branch. There are 16846 possible packages in pkgsrc-2015Q4, up from 16764 last quarter. Notable new packages this quarter include kodi (home media center software previously known as xbmc), php-baikal (a CardDAV/CalDAV server), freecol (a Colonization clone), unicorn (a CPU emulator framework), and clang-static-analyzer.See the release announcement for more information.
NetBSD New Developers
The NetBSD project is pleased to welcome the following new developers:- Ritesh Agrawal (login: ragrawal), who will be working on networking.
- Guilherme Salazar (login: salazar), who will be working on kernel.
POSIX locales; POSIX shell and `…` command substitutions
izabera did make a good point in IRC the other
day for why we will need to have two locales at the very least in
MirBSD – C and C.UTF-8 (the latter being widespread
enough by now, thanks to me,
interestingly enough. He uses code which leads to unexpected results…
… because tr(1) was the first utility I
converted to Unicode, to explore possibilities and craft the OPTU encoding
and, thus, “流” is, indeed, an alphanumeric character.
This implies two things: we need to change MirBSD libc locale functions back to support two charsets (and make setlocale(3) match), and mksh(1) should implement locale tracking (to change set ±U whenever one of the relevant parameters (${LC_ALL:-${LC_CTYPE:-${LANG:-C}}}) changes in the session; users could still set utf8-mode manually though). For this to not break anything, we’ll have to audit scripts in MirBSD though (usually adding export LC_ALL=C at their begin is enough, and we need this for portable scripts anyway) and remove all occurrences of #ifndef __MirBSD__ before setlocale(3) calls in applications. This will take a while.
Secondly, I opened an issue with POSIX about handling of the (deprecated, and for good reason) `-style command substitutions. The GNU autoconf texinfo manual gives good advice for portable shell scripts, and we all knew that foo="bar `echo \"baz\"`" wasn’t portable due to use of more than one set of double quotes, but my (and the yash authors’) reading of the standard (and mksh R52’s POSIX mode) make it set $foo to bar "baz" instead of the historic bar baz now, and I wish to get this clarified (and, possibly, the standard changed to match historic practice, as this breaks at least the Acrobat Reader 5 start script). Nothing has been decided yet (due to the holidays, I’m sure), but we got input from some other people involved in shell.
So, if any #!/bin/sh scripts break or behave weirdly with R52, you now know why. I’m waiting for an official statement.
$ generate() { tr -dc "[:alnum:]" < /dev/urandom | dd bs="$len" count=1; } $ len=10; echo $(generate 2>/dev/null) Ut流54Ȫf
This implies two things: we need to change MirBSD libc locale functions back to support two charsets (and make setlocale(3) match), and mksh(1) should implement locale tracking (to change set ±U whenever one of the relevant parameters (${LC_ALL:-${LC_CTYPE:-${LANG:-C}}}) changes in the session; users could still set utf8-mode manually though). For this to not break anything, we’ll have to audit scripts in MirBSD though (usually adding export LC_ALL=C at their begin is enough, and we need this for portable scripts anyway) and remove all occurrences of #ifndef __MirBSD__ before setlocale(3) calls in applications. This will take a while.
Secondly, I opened an issue with POSIX about handling of the (deprecated, and for good reason) `-style command substitutions. The GNU autoconf texinfo manual gives good advice for portable shell scripts, and we all knew that foo="bar `echo \"baz\"`" wasn’t portable due to use of more than one set of double quotes, but my (and the yash authors’) reading of the standard (and mksh R52’s POSIX mode) make it set $foo to bar "baz" instead of the historic bar baz now, and I wish to get this clarified (and, possibly, the standard changed to match historic practice, as this breaks at least the Acrobat Reader 5 start script). Nothing has been decided yet (due to the holidays, I’m sure), but we got input from some other people involved in shell.
So, if any #!/bin/sh scripts break or behave weirdly with R52, you now know why. I’m waiting for an official statement.
Early days of Unix and design of sh
Abstract for talk:
- my history and background
- how and why we had to re write the shell
- why I wrote my own memory management
- key language design decisions
- where those ideas came from
- what was hard to get right
- system changes we made to accommodate sh
- what the rules were in UNIX group
- what would I do differently today
Code stuff
Interesting articles
The Most Popular BSD Stories Of 2015Wallpaper of the week
from http://hdw.eweb4.com/out/318823.html
0 comments:
Post a Comment