-
meena
babz: anyway, my /usr/src belongs to my user. I keep it in sync with git.freebsd.org, and push my own changes to codeberg.org
-
meena
but because I don't want my machine to exclusively be used for building FreeBSD, I keep up to date via PkgBase
-
alepzi
does anyone run thin jails inside thick jails? and i wonder what the overhead cost is for the middle jail?
-
meena
I just do thick jails for everything these days… until podman becomes production ready?
-
alepzi
how much extra disk and extra ram does it take to run a thick jail vs a zfs template cloned thin jail?
-
alepzi
guesstimate
-
alepzi
meena: ^
-
alepzi
openbsd has a convention of putting the main nic of a comp in the "egress" group. does freebsd have a convention like that?
-
voy4g3r2
has anyone seen where man pages require groff to be installed to be able to render? for example man cxgbetool
-
voy4g3r2
well lets see how this git pull request goes..
freebsd/freebsd-src #1072 and lets see how bad it is..
-
VimDiesel
Title: A set of changes to manual pages that were identified to be out of alignment by chrisdavidson · Pull Request #1072 · freebsd/freebsd-src · GitHub
-
decuser
tap tap tap... this thing on? Just going through my list of apps to get working on freebsd, got to hexchat. Yay!
-
alepzi-
nice!
-
decuser
indeed, it is. So much cleaner than some other OSes.
-
alepzi-
openbsd has a convention of putting the main nic of a comp in the "egress" group. does freebsd have a convention like that?
-
voy4g3r2
i am not familar with that alepzi-
-
voy4g3r2
is there something in particular you are looking for, from open to free?
-
TommyC
pledge() would be nice :3
-
kenrap
voy4g3r2: nice work on the PR
-
yuripv
voy4g3r2: some nitpicking review coming your way :D
-
kenrap
uh oh...
-
alepzi-
does anyone run thin jails inside thick jails? and i wonder what the overhead cost is for the middle jail?
-
voy4g3r2
yuripv: thank you :)
-
voy4g3r2
i do not know if i am struggling more figuring out man pages.. or this damn git
-
voy4g3r2
yuripv: you bring up some real good points and that zzz one is just weird
-
voy4g3r2
zzz does NOT exist on armv7 but does on amd64
-
voy4g3r2
i have started to a major of the work on amd64 now
-
yuripv
but you are changing the x86-only man page
-
yuripv
guess it doesn't get installed on arm as well
-
voy4g3r2
yes, i thought i "fixed" that mistake
-
voy4g3r2
i am also breaking up pull reguest into smaller commits
-
voy4g3r2
it is my, hopefully right, understanding.. i can have multiple commits in one pull request, corret?
-
lw
yes, you can
-
voy4g3r2
sweet, okay
-
lw
and i prefer to err on the side of more commits if i'm unsure, because the committer can squash them if needed before committing
-
lw
whereas 'un-squashing' a big commit is much harder
-
voy4g3r2
yeah, a few people highlighted that in the pull request
-
voy4g3r2
and also here too
-
voy4g3r2
yuripv: i appreciate the reviews.. its late here but will tackle these in smaller commits, i do appreciate the input/comments
-
lw
voy4g3r2: also i noticed you had a couple of merge commits in the PR, you might want to read up on rebasing (git pull --rebase) to avoid those. it's not a big deal though, just that rebasing is more common than normal merging nowadays
-
voy4g3r2
yeah, that was a nightmare
-
voy4g3r2
i thought it was taken out, guess not.. but some light reading before bed, thank you!
-
kenrap
voy4g3r2: one thing to share if you're still around. Splitting commits into smaller ones via unstaging specific hunks in a file can get tedious in general. For this situation it be might be better to soft reset your commit and make each file their own commit.
-
lw
is AF_LINK the right address family to represent an ethernet interface's hardware address?
-
alepzi-
if we don't want any local logging can we just have remote logging configured in syslogd.conf and no local logging will happen?
-
alepzi-
handbook implied local logging is always required even when remote logging
-
lw
i don't see any reason why that wouldn't work, but not everything in /var/log is created by syslog (some of it comes from daily, for example, like the *.today files)
-
alepzi-
how reliable is remote logging? likelyhood of getting messages dropped here and there?
-
lw
each message is a single UDP packet with no acknowledge or retry, so messages will be dropped if the network is congested or if the remote host is down or busy
-
alepzi-
can you adjust the buffer size for remote logging or how does send queuing work?
-
alepzi-
the buffer size on the client, sending side
-
lw
i've never tried that, perhaps net.inet.udp.recvspace would work on the receiving side
-
alepzi-
in practice how often do you see log messages dropping when there's machine and network capacity available?
-
lw
never due to network congestion, often due to rebooting hosts or other maintenance work (so i would never rely on remote syslog alone, unless there was no other option)
-
alepzi-
ok sounds like there's a reason for a reliable log shipper then and just use syslog for local
-
alepzi-
does anyone run thin jails inside thick jails? and i wonder what the overhead cost is for the middle jail?
-
lw
do we not have == for structs yet in C? that would be quite useful when dealing with basic data structs... surprised this isn't there given the other usability features we've got recently
-
» TommyC frolicks in C++
-
nerozero
Hi there, I'm start having SATA drives detach / periph destroyed again
-
nerozero
This happening almost on all machines regardless of drive or system brand
-
nerozero
zfs raid 0 - mirror become degraded, one drive become offline for couple of seconds and back online again
-
nerozero
here is the sample from the log:
bsd.to/0VPk#edit
-
VimDiesel
Title: dpaste/0VPk (Plain Code)
-
nerozero
-
VimDiesel
Title: ZFS - Random drive detachments from host | The FreeBSD Forums
-
nerozero
there is literally no issues with hard drives, drives where tested with all possible tests.
-
nerozero
also, this never happen to the primary/boot drive, even if drives are switched
-
nerozero
also old hard drives (5-7yo) which is still in the raid - never had this issue
-
lw
meena: i went with Unlicense for netd because i prefer the text (it's a lot shorter than CC0) and more appropriate to software
-
lw
interestingly Google forbids both CC0 and Unlicense
-
meena
lw: it's not in here,
docs.freebsd.org/en/articles/license-guide/#_acceptable_licenses so if you want to get it into base, you'll either have to negotiate with core@, or reticence
-
VimDiesel
Title: FreeBSD Licensing Policy | FreeBSD Documentation Portal
-
lw
meena: i'm not that bothered about it going into base but, if someone wanted to import it, they could simply relicense it under BSD
-
lw
(if this ever happens, and there's an issue with that, perhaps i'll revisit this)
-
meena
right. it's public domain, they could just do that
-
lw
fwiw i'm not writing this with the intention of it being merged, i'd be fine if it was just in ports. mostly because i think the amount of bikeshedding needed for that to happen would be far more than i care to subject myself to :-)
-
lw
i need to check you can completely disable rc(8)'s networking stuff though, if not i may end up submitting some patches for that
-
meena
👍
-
meena
lw: btw, if you're planning to use ucl for the config format, which, again, it's right there! do why not?! meka has some example code for for to go between nvlist and ucl:
github.com/mekanix/freebsd-project/tree/master
-
VimDiesel
Title: GitHub - mekanix/freebsd-project: Skeleton of ideal FreeBSD project
-
lw
meena: i was hoping to avoid having any kind of configuration file
-
lw
for now i'm going to use nvlist_pack()/nvlist_unpack() to store the state database... i suppose it could use ucl or something later if that seems useful
-
lw
but the idea is you just configure it with netctl, there should never be any need to edit files
-
meena
ah
-
lw
perhaps ucl is useful to let people manually repair the state in case of bugs
-
» lw wonders if nvlist_pack() format is guaranteed to be stable
-
nimaje
as there are nvlist_send() and nvlist_recv() and they don't note any compability constraints, I would guess they use the same format (except that you can send file-desciptors if you use unix sockets) and it remains stable, especially as there is a note that byteorder gets handled automatically and you don't have to worry about it
-
lw
TommyC: whenever i write C++ code, i end up getting distracted trying to implement all the things the standard is missing, like Unicode strings and a coroutine-based event loop, and never get any actual work done. so i'm staying with C until those things get into C++27 or whatever :-)
-
lw
basically, C lets me lower my expectations of what the language should do
-
lw
hmm, my cache directory is 42GB. isn't that meant to be automatically pruned?
-
lw
er, ccache directory
-
TommyC
lw: uh...how are you getting those features in C?
-
lw
i'm not, but in C i just don't expect them. in C++ i do since it's a better language and should do these things. :-D
-
lw
(i know people are working on both of these things, they just aren't in yet)
-
TommyC
lw: Well, the standard defines coroutines since C++20 which is ~4 years old now. I don't know much about Unicode so can't help you there.
-
TommyC
If the compiler you're using isn't keeping up with the standard...well, can't help with that either.
-
lw
yeah, it has coroutines, but you have to bring your own coroutine context, event loop, etc. i've implemented this myself at least partly but it's a huge amount of complex code and i never got around to finishing it
-
lw
and none of the existing implementations i looked at really seemed very nice
-
voy4g3r2
kenrap: that is a good idea, i think the best way is to update a file and make a commit.. for each file... will save the smarter people latest of trouble
-
nimaje
is there any downside of having rctl enabled? or why is the default that rctl is disabled?
-
lw
kevans: playing around with netlink, it seems like bringing an interface up also generates RTM_NEWLINK. i wonder if this is supposed to be an 'interface was modified' event rather than specifically a new interface?
-
voy4g3r2
lw: git --rebase will require me to read a few times... i came tot he conclucion, makes sense.. multiple people are doing changes.. sometimes you want to commit a subset of yours, while someone else is working on it. BUt be careful rebase is not the holy grail.. it can be schrubbery and a black knight with no legs.. if not careful
-
voy4g3r2
the git/scm handbook.. oh boy
-
lw
voy4g3r2: in this case it's not really that different from merge. the main difference is instead of the history being [old commits]-[your commits]-[merge commit]-[new commits], it becomes [old commits]-[new commits]-[your comments] - i.e. it reapplies your commits on top of the new commits, as if you'd done it that way to begin with
-
voy4g3r2
yeah.. i need to reread, that was not sticking in my brain
-
lw
imagine it plucks your commits out of the history and puts them back at the top of the history
-
lw
so your commits are always the latest commits on the branch, even when people have pushed new commits since then
-
meena
yeah, rebase is just cherry-pick underneath
-
lw
voy4g3r2: this might help, maybe it's easier to follow than the git manual:
git-rebase.io
-
VimDiesel
Title: Learn to change history with git rebase!
-
voy4g3r2
ah, so i can have commits over days/weeks and other people are doing their work.. and i go, well there stuff is cool.. so let me add to mine and make a pretty hisetory instead of a merge/branch nightmware
-
lw
yeah, exactly
-
lw
when you submit a PR you want your commits to be the latest commits on the branch, that's what rebase does
-
lw
(it can also do a lot of other useful things, but this is the most important)
-
meena
(well, until you start doing squash / fixup)
-
voy4g3r2
ah and in that PR history, it shows (which i was trying to do) a rebase
-
voy4g3r2
and me making a mess of things :)
-
lw
rebases don't show in the PR history at all because they're invisible in the history, what shows in your PR is a merge
-
voy4g3r2
ah, i did try the rebase functionality in github and was like.. yeah i think this looks worse.. but i am nieve in this area to be quite honest
-
lw
a merge being like a history entry that explicitly merges two branches together: your branch and the new upstream branch
-
voy4g3r2
i am just pushing forward as these man pages need to be cleaned and i am NOT looking forward to
-
voy4g3r2
"relearn" C :)
-
lw
i wouldn't worry about this too much because it's possible for someone else to fix it, but it's worth learning at some point :-)
-
lw
(since many projects expect PRs to be submitted this way)
-
voy4g3r2
yeah and i am starting to see why upstream is better to work on than 14
-
lw
you could actually make changes on 14 and rebase them onto main if you wanted (but i don't suggest doing that, always easier to work on current)
-
voy4g3r2
because a few of these man pages do not make sense, as current has changed/modified/refined a lot of stuff.. so it will always be a chicken and egg thing
-
lw
fwiw, if you decide to split these into separate commits, and you can identify which commits should be backported to 14 or 13, you can include 'MFC after: 2 weeks' in the commit message to indicate that
-
lw
(this is one benefit of more, smaller commits)
-
voy4g3r2
ah, yeah i may look at that.. when work decides to STOP throwing meetings on my calendar... thankfully european collegues go home in 3 hours :)
-
voy4g3r2
i guess one last one.. i made a jail for this work (to minimize screwing up my server), i can just pull the -CURRENT branch even though working on 14.0.. and use the mandoc utility to "build" the man pages for a sanity check?
-
voy4g3r2
yuripv was making a few references to mandoc.. even found a bug in the html output vs man page output and links..
-
lw
you can try 'man ./manpage.1' but i'm not sure how you'd go about using the current mandoc on 14, i've never tried that
-
lw
i really do not understand rtnetlink(4)... i'm subscribing to RTM_NEWLINK and i want to get IFLA_IFNAME in the message, how do i tell the kernel that?
-
lw
ah, apparently you get this by default
-
lw
how do i print aligned columns of data with libxo, without having to calculate padding myself? i can't seem to find anything about this in the documentation
-
victori
@lw use column -t
-
lw
i mean from C
-
lw
it seems like using {Vh:} prevens padding from working... so {Vh:somevalue/%-30d} won't be padded
-
lw
ah ok so you need to do it like this: "{[:8}{Vhn,hn-decimal,hn-1000:txrate/%ju}b/s{]:}"
-
kevans
lw: netlink messages apparently have flags that `route monitor` doesn't dump, what do those look like for all of these?
-
kevans
just digging through the kernel it's a little annoying to trace down how and whene these are generated
-
kevans
when, even
-
lw
kevans: nlmsg_flags is 0 for all the messages
-
lw
-
kevans
yeah I don't see how these are useful
-
lw
kevans: tried printing out a couple more fields, there are a lot of different flag-type fields here
le-fay.org/tmp/30d/YEewO6.txt
-
lw
ifi_flags is presumably the flags ifconfig prints, i'm not sure what ifi_change is
-
alepzi-
nimaje: rctl is for resource management right? it's prollydisabled by default as not everyone uses it?
-
alepzi-
does anyone run thin jails inside thick jails? and i wonder what the overhead cost is for the middle jail?
-
nimaje
alepzi-: but being enabled by default would make it easier to start using it and if it doesn't really have costs having it enabled, then that seems like a better default, so I'm asking for the costs that has, because I don't really expect costs from merely enabling it
-
meena
nimaje: i agree.
-
meena
-
VimDiesel
Title: freebsd-src/sys/kern/kern_racct.c at dfe30e41967f9b5112c42ca20ec2c366db74cef9 · freebsd/freebsd-src · GitHub
-
meena
that's the default in all KERNCONFs
-
meena
otoh, if we move people over to MINIMAL, they'd get used to adding stuff to loader.conf so it wouldn't feel like that big a deal
-
alepzi-
but why enable it if it's not in use?
-
alepzi-
just because it's easier to start using it? that's called proper configuration which isn't even hard
-
alepzi-
meena: if you want to get ppl to WANT to go to MINIMAL, do some serious benchmarks or whatever that shows it has a benefit
-
alepzi-
either reduced attack surface, better perf, etc
-
nimaje
why isn't there a loader tuneable for ulimit and default that to disabled? most people don't set ulimits
-
meena
alepzi-: MINIMAL boots significantly faster, for one.
-
meena
but still, it would be nice if these things could be enabled without a reboot
-
nimaje
I don't even see why it needs a tuneable, do I miss some costs of enabling rctl there?
-
kevans
alepzi-: a jail just existing doesn't really have all that much overhead on its own
-
kevans
lw: what a mess... hopefully melifaro can shed some light
-
alepzi-
kevans: a thick jail has atleast the disk requirement of a full base which is what, 1GB?
-
alepzi-
vs a thin jail zfs template clone which is basically 0
-
kevans
sure
-
alepzi-
then there's runtime cost, is there any ram or cpu overhead to a jail layer?
-
kevans
nothing significant; unless you're running closer to the order of thousands of these, I'd be surprised if you notice any impact
-
kevans
struct prison is relatively light, it has to be maintained in the allprison list just like any other
-
alepzi-
maybe 1% cpu and ram overhead vs running the binary in the host directly?
-
nimaje
should be <<1% and nesting shouldn't add any addiional overhead
-
alepzi-
what's struct prison?
-
alepzi-
wow that low? that's almost free
-
kevans
yeah, I'd probably estimate lower as well... we don't exactly spend a lot of our time searching jails
-
kevans
struct prison is the internal representation of a jail
-
alepzi-
any potential footguns i should be aware of if i'm putting thin jails in thick jails?
-
beastwick
On a Gentoo system I am able to mix "stable" with "testing" packages. Can I achieve this somehow with FreeBSD ports? Basically try mixing quarterly with latest via poudriere somehow?
-
beastwick
By packages, I mean ports.
-
meena
beastwick: that's not really how we roll…
-
meena
but sure, you can duplicate the repo definition and have Fbsd-quarterly and Fbsd-latest and then run into all kinds of pain
-
jns
Does anyone know if it is possible in FreeBSD to send raw commands to a ps2 port?
-
nimaje
well, latest isn't really "testing" stuff that is in the ports tree should work, quarterly is just that you have less versions jumps and at more predicable times
-
nimaje
but you could try building stuff from quarterly and cherry-picking from latest
-
jns
On linux raw ps2 port voodoo is sort of possible in a very roundabout way by enabling serio_raw (which effectively disables atkbd), send the command to /dev/serio_raw and then remap the bus to atkbd ... i think on FreeBSD kbdcontrol can be similarly used to attach/detach a keyboard, but i'm not seeing an an obvious equivalent of serio_raw
-
meena
jns: what does that achieve
-
beastwick
Curious, does anyone here run quarterly userland, but also use a jail for certain "latest" packages? Is this a viable approach? I am split on running mostly quarterly with some cherry picking, or using a jail. My goal is to minimize manual work. If I cherry pick, I have to manually build against installed dependencies. I say to my self, it will only be for a small set of software, but truthfully -
-
beastwick
it tends to grow.
-
beastwick
or am I thinking about this wrong?
-
nimaje
why not using the official pkg repo? then it shouldn't matter that much on the manual work side if you use quarterly or latest
-
beastwick
nimaje I want to use mostly quarterly, but "backport" if you will some latest packages, just was curious if a jail could help me out here
-
nimaje
depends, for the normal usecase of jails, putting services in a seperate system it should work perfectly fine
-
meena
beastwick: latest packages are "backported" quite frequently, if there's serious bugs or security issues
-
meena
-
VimDiesel
Title: FreeBSD / ports - FreshBSD
-
jns
meena: what does what achieve?
-
meena
jns: the thing you're describing. can you go a level above. what are you trying to advice
-
jns
oh, sure,.. i have a rather exotic keyboard, it has a built-in vfd display, controlled with ps2 commands, and over 100 individually controllable led's and such... (and a bunch of extra keys)
-
jns
i managed to make the extra keys scannable by slightly modifying the atkbd kernel driver, but that doesn't really help me with the extra leds or display
-
voy4g3r2
am i wasting my time if i try to get bhyve on bsd box.. to get -CURRENt operational?
-
jns
meena: on linux i used to use this little script to write text to the display:
linkerror.com/stuff/vfdwrite.sh.txt -- obviously won't work on FreeBSD because there's no raw serio, at last not as far as i know -- i just wanted to confirm i'm right about that, really... I'll probably end up having to write a driver
-
voy4g3r2
ls
-
voy4g3r2
err don't mind me
-
nimaje
voy4g3r2: bhyve should work fine and running a freebsd vm with it should be easier than to run an android-x86 vm with it, do you have any problems?
-
signalblue
Hello all, after installing Docker on FreeBSD 14, how do I start the Docker daemon?
-
voy4g3r2
nimaje: that is good to know
-
signalblue
service docker start doesn't seem to start the daemon
-
meena
signalblue: anything in logs?
-
signalblue
meena: docker does not exist in /etc/rc.d or the local startup directories (/usr/local/etc/rc.d), or is not executable
-
signalblue
that is the result of service start docker
-
nimaje
hm, it only has bin/docker maybe it works without a daemon?
-
signalblue
how so?
-
nimaje
ah, it has an install message, you need docker-machine too, could be added in the pkg-descr too, so that people are more likely to see it
-
nimaje
but that one too brings only an executable and no documentation, so no idea how it is used
-
signalblue
nimaje: I assume you do not use Docker
-
weust
Anyone happen to run OpenHAB on a Raspberry Pi? I swtich pkg to Latest to install 4.1.0, but there is a issue with com.sun.jnathat has no freebsd aarch64 support, only x86 and x86-64 from what I can tell from the log
-
weust
pkg quaterly only has 2.5.something
-
nimaje
I don't use docker, I just looked what these ports build and install
-
meena
weust: how is Java not pursuing aarch64 Tier 1 support? isn't it supposed to be running on 14 billion devices, most of which are phones and most of which, by now, are aarch64?
-
llua
signalblue: the pkg-message for docker mentions only installing the client, which can talk to remote host's daemons.
-
lw
meena: it's supported arm64 for ages, maybe just not on freebsd?
-
meena
lw: maybe
-
_xor
What's the main difference between /usr/local/man and /usr/local/share/man?
-
lw
_xor: the first shouldn't exist
-
lw
anything installed in there is a ports bug
-
lw
i think this was a bit unstandardised until recently though?
-
alepzi
any potential footguns i should be aware of if i'm putting thin jails inside thick jails?
-
_xor
Don't know, but I was just refreshing my memory on port macros related to man pages. During that process I noticed /usr/local/man and /usr/local/share/man, and wondered what the difference was.
-
_xor
I have a bunch of files in /usr/local/man/*, looking up which ports put them there currently. Apparently, samba is one of them.
-
voy4g3r2
alepzi: you will consume more space than thin jails :)
-
_xor
doas, sudo, pkg ,etc. Bunch of ports.
-
_xor
Are you sure that it's /usr/local/man that's not supposed to exist?
-
voy4g3r2
_xor: the adventures of man pages :)
-
lw
_xor: i'm fairly sure but i can't find where i saw that now
-
weust
meena: java, imo, lost cross-platform when it started to ass architecture specific code
-
weust
but, in this case I see OS's like win and, of course, linux with aarch64 included. and MacOS
-
meena
ass architecture