596: Globbing /etc

596: Globbing /etc

Released Thursday, 30th January 2025
Good episode? Give it some love!
596: Globbing /etc

596: Globbing /etc

596: Globbing /etc

596: Globbing /etc

Thursday, 30th January 2025
Good episode? Give it some love!
Rate Episode

Episode Transcript

Transcripts are displayed as originally observed. Some content, including advertisements may have changed.

Use Ctrl + F to search

0:00

This week on the show

0:03

we cover the following. Bill

0:05

Ridding, my home network of

0:07

IP addresses, an article we

0:09

found, interesting as a GitHub

0:11

gist, then a Star article

0:14

about tools for identifying and

0:16

resolving storage bottlenecks. Open, BBPD

0:18

has been released in version

0:20

8.7, lead ports. for letting

0:22

Dr. Brian Robert Callahan point

0:25

the not-a-da compiler to MacO-S-A-R-64

0:27

and how that went, modify

0:29

an omniois service parameter, the

0:31

history and use of ETC

0:33

collob, and how it's used

0:35

in early Unixes, and more

0:37

in this week's episode of BSD.

0:40

Yeah! BSD

0:56

now, episode 596, called

0:59

Gloving ETC, recorded on

1:01

the 17th of January

1:03

2025. I'm still practicing

1:06

with the new year,

1:08

not to say 2024.

1:11

Hi, I'm your host,

1:13

Benet Grosheleng. Hello, I'm

1:15

Tom Jones, and I wrote

1:17

2024 in my diary every

1:19

day for the first nine

1:22

days of the year. Before

1:24

I realized. I don't know why

1:26

I would be signing documents.

1:29

But yeah, I was very confused.

1:31

Like, it's going to keep

1:33

happening, isn't it? At least

1:35

in January, you're still

1:37

adjusting to a new year.

1:39

I went to a dentist today and

1:42

I made an appointment for 2026.

1:44

Oh, which is absurd. Like,

1:46

I don't want it to be

1:48

2026 yet. We've barely had this

1:50

year. Wait, don't you do the

1:52

twice per year dentist appointment? No,

1:54

I think the NHS is struggling

1:56

for money. Okay. Or they get

1:59

so many costs. only can do

2:01

once per year. Oh, it's a

2:03

good problem to have as a

2:05

gentleman. I wouldn't, I wouldn't, I'm

2:07

not going to touch this one

2:10

at all. We phrase it like

2:12

that. You have such good teeth,

2:14

then you only have to come

2:16

once per year. Yeah, that's how

2:18

it is. But that's it. Yeah.

2:21

Speaking of which, mine is also

2:23

somewhere around January or February. I

2:25

don't think anyway, anyway, any requires

2:27

all our appointments at the dentist,

2:29

right. Did you have a good

2:32

winter poser? I enjoyed myself. I

2:34

talked a little bit with Jason

2:36

about my Japan trip. It was

2:38

lovely. It was just great. Were

2:40

you confused to be in Japan

2:43

but not talking about BSD all

2:45

the time? Yeah, I was a

2:47

little bit. I was at the

2:49

venue where we would typically be

2:52

for Asia BSTCon because it was

2:54

familiar territory. Of course it was

2:56

closed. There's nothing in there. But

2:58

I wanted to go to the

3:00

tea store who that is in

3:03

the street. Unfortunately there was also

3:05

closed and so I had to

3:07

find another tea store to buy

3:09

good tea and luckily I did

3:11

find one because at the beginning

3:14

of the year a lot of

3:16

shops are closed and the shops

3:18

that are open they have long

3:20

lines in front of them because

3:22

apparently at the beginning of the

3:25

year the Japanese shops do these

3:27

kinds of it's not a raffle

3:29

so they wrap something of their

3:31

items that they sell into a

3:33

bag that you can't see through

3:36

and then they give it a...

3:38

It's like a mystery box. You

3:40

buy it for a certain price

3:42

and you don't know what kind

3:44

of items you get there. So

3:47

in Akihabara where I was staying

3:49

these last couple days in my

3:51

Tokyo trip, there were plenty of

3:53

lines for these anime shops or

3:55

collectors cards. And some of these

3:58

had them at the display at

4:00

the front where you could say,

4:02

oh, 5,000 yen for this mystery

4:04

bag of good stuff. You don't

4:06

know what's in there, but typically

4:09

it's nice. At the same in

4:11

Shibuya, the shopping district, and our...

4:13

like should I actually try getting

4:15

one of these but yeah you

4:17

know require you to stand in

4:20

line for a lot of time

4:22

so I didn't want to waste

4:24

that but yeah it's it's nice

4:26

maybe you missed out on something

4:28

really a cent I mean yeah

4:31

apparently so what I read afterwards

4:33

there's typically good products in there

4:35

and not just trash they want

4:37

to get rid of but sometimes

4:40

you get oh two pairs of

4:42

gloves or I don't know if

4:44

five trousers or something. It would

4:46

have been a very different thing

4:48

to have done on a vacation

4:51

like so in terms of activities

4:53

or no like just standing in

4:55

front of a shop. Yeah that's

4:57

a good one once would be

4:59

entertaining doing it all day would

5:02

probably be quite tedious. Maybe yeah.

5:04

Do you think New Year was

5:06

a good time to go to

5:08

Japan? So I was a bit

5:10

worried about people reporting, don't come

5:13

to Japan during the holidays, everyone's

5:15

traveling, everything is overcrowded and since

5:17

the yen is so weak, a

5:19

lot of foreigners are also traveling

5:21

there. I didn't find it too

5:24

crowded, I mean the trains were

5:26

okay, I could always get in,

5:28

there was no overcrowding there. I

5:30

found it not unpleasant. that were

5:32

that they too that they were

5:35

too many tourists beside myself and

5:37

I found it not yeah in

5:39

a in a bad way that

5:41

the country is now over over

5:43

flowing with people. I booked all

5:46

my train tickets a month and

5:48

ahead in advance so that I

5:50

had a reserved seat so at

5:52

least for the Shin Kansans. the

5:54

hotels, I mostly booked them a

5:57

lot of a long time because

5:59

I booked that flight in January

6:01

2024 for December 2024 so I

6:03

could still planned hotels in the

6:05

route. So that was not the

6:08

issue. I thought it would be

6:10

worse in some of these attractions

6:12

it was, apparently in the, where

6:14

I was at the SnowMonkey Park

6:17

in Nagano, where you have to

6:19

hike through a 40-minute icy, slippery,

6:21

you know, yeah, wooden area on

6:23

the left side, there's a, you

6:25

know, a long way down from

6:28

the mountain and there's no like

6:30

handrail or something you know there's

6:32

people coming you know from the

6:34

other side coming back and you

6:36

go in there and sometimes people

6:39

would slip and fall down and

6:41

it's just whoa and since there's

6:43

so many people going there and

6:45

tourists from a lot of places

6:47

in Asia around the around the

6:50

countryside that was kind of oh

6:52

okay either I waited a little

6:54

bit and let them pass or

6:56

try to be going ahead of

6:58

them to be in a spot

7:01

where there's a bit more space.

7:03

So that was a bit overcrowded

7:05

and maybe a bit too popular

7:07

between the years. But other than

7:09

that, Japan was just as nice

7:12

as you would imagine and if

7:14

you've been there, you know what

7:16

I'm talking about. So. All right,

7:18

cool. This episode of Beastie now

7:20

is brought to you by Tar

7:23

Snap. Go to Tarstep.com/BSD now to

7:25

find online backup for truly paranoid

7:27

people. And if you want to

7:29

support this show in one way

7:31

or the other, check out our

7:34

patron page at patreon.com/BSD now. And

7:36

we thank you in advance for

7:38

that. So let's get into some

7:40

of the things we do. So

7:42

first up in the headlines this

7:45

week we have... I don't know

7:47

how to describe this. We have

7:49

a GitHub gist by Jay Mason

7:51

titled Ridding My Home Network of

7:54

IP Addresses. Do you think this

7:56

is part of a blog? Would

7:58

people do that? There's 24 revisions.

8:00

That's cool. At 3 you start.

8:02

by the time we record this.

8:05

Yeah, I don't think it means

8:07

it's just three people have started.

8:09

It's not a three-star article. Like

8:11

a three-star hotel. Recent changes in

8:13

the text scene have made it

8:16

clear that relying on commercial companies

8:18

to provide services that rely on

8:20

isn't a good strategy in the

8:22

long term. And given that tail

8:24

scale is so effective these days

8:27

as a remote access system, I've

8:29

gradually been expanding a small collection

8:31

of self-hosted web apps and services

8:33

running on my home network. Until

8:35

now, they've mainly been addressed using

8:38

their IP addresses and random high

8:40

ports on the internal land, which

8:42

need high ports. A pihole 109727.

8:44

Home Assistant 1097 to 11. Linkeding

8:46

109726, you get the idea. And

8:49

that's important 1992, I don't know

8:51

why you would do that. Needless

8:53

to say, this is a bit

8:55

messy and ineligan. So I've been

8:57

planning to sort out for a

9:00

while. My requirements, no more ugly

9:02

bear IP addresses. Imagine if there

9:04

were v6 addresses how much bear

9:06

I'd be. One per service, no

9:08

visible port numbers, fully valid TLS

9:11

search, no having to click through

9:13

warnings or install funny CIA search.

9:15

Accessible, regardless of which DNS server

9:17

is in use, using public DNS

9:19

records. This may seem unusual, but

9:22

it's useful so that internal services

9:24

can be accessed while I'm using

9:26

my work VPN, which forces its

9:28

own DNS servers. Accessible internally? Accessibly,

9:30

externally, externally, over tail scale. After

9:33

a few false starts, I guess

9:35

24, I'm pretty happy with the

9:37

current setup which uses Caddi. Hosting

9:39

with a main at cloudflear. First

9:42

off, first off, since the service

9:44

URLs are not to be accessible

9:46

externally without tail-scale active, the HDTP

9:48

challenge approached provision lets and cryptsurts

9:50

can be used. That would require

9:53

an open to the internet publicly

9:55

accessible HDTP server on my home

9:57

network, which I absolutely want to

9:59

avoid. In order to use Akmi

10:01

DNS challenges... Instead, I set up

10:04

my public domain, taint.org, to use

10:06

cloudflare as the authoritative DNS server.

10:08

In cloudflare terms, full setup. This

10:10

lets Caddy edit the DNS records

10:12

via cloudflare API to handle the

10:15

ACME challenge process. One of the

10:17

internal hosts is needed to run

10:19

Caddy's Caddy server reverse proxies. I

10:21

picked Hass, home assistant host, which

10:23

didn't have anything already running on

10:26

Port80 or Port 443. The

10:29

dedicated DNS domain I use for

10:31

my home services is home.taint.org. In

10:33

order to use this I clicked

10:35

through the DNS cloudflow at a

10:37

panel and created DNS record as

10:39

follows. Now any host names under

10:41

home.tank.org will return the IP 10177211

10:43

where Caddy will run. I don't

10:45

particularly care about exposing my internal

10:47

home network IPs to the world

10:49

as a tradeoff to allow the

10:51

URLs to work even if an

10:53

internal host is using the work

10:56

VPN or resolving 8.8.8.8 or whatever.

10:58

That's worth missing out on a

11:00

bit of paranoia since the IPs

11:02

won't be accessible from outside without

11:04

tail scale anyway. It's worth noting

11:06

that the cloud flare hosted domain

11:08

doesn't have to be the same

11:10

one used for URLs in the

11:12

home network. Using. to one which

11:14

is hosted in cloud flare. One

11:16

wrinkle is that I had to

11:18

generate a custom caddy build in

11:20

order to get the DNS providers

11:22

cloud flare non-standard module from caddyserver.com.

11:24

This is a click and download

11:26

page which generates a custom caddy

11:29

binary on the flow on the

11:31

fly. It would be nicer if

11:33

cloud flare module was standard behave.

11:35

Once it's installed I get this

11:37

output, caddy list modules, big list.

11:39

DNS providers, cloud flare, DNS providers,

11:41

DNS providers, route 53. Yes, I

11:43

have Caddy running as a normal

11:45

service, not as a doctor container.

11:47

Go to the cloud for our

11:49

account dashboard and create an API

11:51

user token as described as developers,

11:53

cloudforodont fundamentals, API getting started, create

11:55

token. In my case, it is

11:57

zoned. and I set a permission

11:59

on the specific taint.org domain. Copy

12:01

that as needed into the caddy

12:04

file. And there's an example. Running

12:06

pseudo caddy run in the same

12:08

directory will start up and verbally

12:10

log what it's doing. Once you're

12:12

happy, you can get caddy running

12:14

in the normal system deservice way.

12:16

After setting it was up, I

12:18

now have my services accessible locally

12:20

as has.home.home.ink.org.com. Taint.org. Caddy seamlessly goes

12:22

off and configures fully valid TLS

12:24

sorts with no fuss. I found

12:26

it much tighter than Sirbar or

12:28

EngineX proxy manager. So this is

12:30

now sorted out all the requirements

12:32

bar one, accessible, externally over tail

12:34

scale. To do this I had

12:37

to log into tail scale and

12:39

admin console, pick a host on

12:41

the 10-197224 internal land, click its

12:43

drop-down menu, edit route, edit route

12:45

route for 10-1972, slash 24. Now

12:47

do all of this all the

12:49

service.home.10dNS records are now accessible remotely

12:51

once tail scale is enabled. I

12:53

don't even need to use the

12:55

TS.net names to access them. Perfect.

12:57

Anyway that's a setup. Hopefully this

12:59

write up will help others. Thank

13:01

you for writing with James Mason.

13:03

Good. Yeah. Good to know that

13:05

people can start their blog as

13:07

you know, get up gists if

13:10

they need to. If you like

13:12

I mean I'm a lot of

13:14

syllabus. I'm I'm talking about fuzz

13:16

them at the end of the

13:18

month, start of next month, about

13:20

writing about free BSD. I'm good

13:22

at grammar, I promise. And, you

13:24

know, like, you can just write

13:26

anywhere. It doesn't need to be

13:28

somewhere special. Like, Benedict and I

13:30

were talking about running community groups

13:32

and I wrote an article for

13:34

the free BSD journal about running

13:36

community groups. Things linked together. And

13:38

honestly, the bare minimum you need

13:40

is yourself. and openness to speak

13:43

to other people and to advertise

13:45

it. And if you're going to

13:47

write a blog, you could just

13:49

write a blog for yourself and

13:51

then in five years time put

13:53

it on the internet. It makes

13:55

no difference to people reading it

13:57

in five years how timely anything

13:59

is or how structured it is

14:01

because it will change and people

14:03

will see it as they see

14:05

it. And so it just being

14:07

a game. Just, that's fine. And

14:09

if you start writing about, oh,

14:11

I need this WordPress blog and

14:13

a domain and an email contact

14:16

list. So before I start my

14:18

very first. article. You have to

14:20

pick the activity you're trying to

14:22

do and do it and not

14:24

something else. And so if you

14:26

yeah, if your goal is to

14:28

set up a blogging system, that's

14:30

very, it is completely orthogonal to

14:32

writing blog, the different things on

14:34

the content and not the whole

14:36

make out. Yeah, like one thing

14:38

enables another, but you don't need

14:40

both. You can just do stuff.

14:42

I mean, if you want to

14:44

do your own BSD podcast, which

14:46

I would strongly advise you don't.

14:49

Just not to stop there being

14:51

more podcast, it's just a podcast

14:53

for a lot of work. You

14:55

can really easily do what Will

14:57

Backman did for BSD talk. And

14:59

just interview people and just put

15:01

that out. And the hard part

15:03

there is speaking to people and

15:05

recording it and editing. Putting it

15:07

out is the easy bit. But

15:09

people will get hung up on

15:11

the putting it out and telling

15:13

people about things once it's established.

15:15

It doesn't. You're not releasing a

15:17

video game. It's fine. You don't

15:19

need a big market push. You

15:22

know, if the content is good,

15:24

it will travel around word to

15:26

mouth and people will find you.

15:28

It's not... No. Irrespective of the

15:30

content being good or bad is

15:32

the relationship to how observed it

15:34

isn't how well it's known. And

15:36

you can do the best thing

15:38

in the world and no one

15:40

might look at it. You could

15:42

also do something which is pretty

15:44

mediocre and put a lot of

15:46

working into advertising. A lot of

15:48

people will look at it. and

15:50

that is something you should be

15:52

aware of when you if you

15:55

you want to write you want

15:57

to run events you want to

15:59

do a podcast don't podcast like

16:01

any of these things you have

16:03

to do the thing it needs

16:05

to be a minimum quality but

16:07

it doesn't have to be perfect

16:09

it doesn't have to be the

16:11

best quality metric then you never

16:13

start or you don't get your

16:15

first content written. And a good

16:17

example of this is if you

16:19

fire for a YouTube channel you

16:21

like if you go and look

16:23

at the really old stuff you'll

16:25

see their videos are terrible but

16:28

they had to grow from that

16:30

to where the content you like

16:32

is. And that so what I'm

16:34

trying to say is the quality

16:36

shouldn't be the barrier to starting

16:38

and also tooling and structure shouldn't

16:40

be the barrier to doing things.

16:42

because they're distinct. You're over-engineering it

16:44

then and don't get to the

16:46

actual thing, the content that people

16:48

should read. Yeah, totally lost. Cool.

16:50

Okay, speaking of content, people should

16:52

read. We have found another article

16:54

from Clara Systems, Ever Expanding Article

16:56

List, and this is about managing

16:58

and tracking storage bottlenecks written by

17:01

Jim Salter, known as the author

17:03

of some tooling around ZFS. And

17:05

here is... The beginner blurb, when

17:07

a storage system is busy, one

17:09

of the most frequent question is,

17:11

which of the many workloads of

17:13

the system is driving that utilization?

17:15

So this week we look at

17:17

some tools that make it easier

17:19

to track down which workloads are

17:21

using up all of the IOPs

17:23

or bandwidth on a storage system.

17:25

And it starts, there comes a

17:27

time in every storage at MinzKorea

17:29

when they realize that they have

17:31

built an excellent system. But the

17:34

details of it have gotten a

17:36

bit away from them, and they'd

17:38

like more insight into what they're

17:40

managing. And these are the tools

17:42

for identifying and resolving storage bottlenecks.

17:44

And so we talk about several

17:46

tools that can make basic storage

17:48

analysis easy under either 3BSD or

17:50

Linux, so he covers both. In

17:52

a nutshell, one can use the

17:54

tool iostat to get very low-level

17:56

information on each individual physical storage

17:58

device in a system, while the

18:00

tools Zpool iostat, Z-top and iO-Zz.

18:02

Tad, Iostat, remember, but with a

18:04

set, each offer additional open set

18:07

of specific metrics and we will

18:09

go into each of these. Using

18:11

these tools, the storage admin can

18:13

easily discover storage bottlenec- and potential

18:15

reliability issues. What to know if

18:17

a disc is slowing your pool

18:19

down, check Z-pulliostat. Want to know

18:21

which of the 10 virtual machines

18:23

is eating all your storage performance?

18:25

Try the IOSTAT instead. So IOSAT,

18:27

IOSAT, TAT, TAT. get it. Okay.

18:29

Each two we're covering is available

18:31

on both previously and Linux systems.

18:33

Iostat and Zepul Iostat are also

18:35

available on Illamos and Oracle systems,

18:37

though the arguments may differ somewhat.

18:40

He has a couple screenshots of

18:42

them. That's where you have to

18:44

rely on our show notes and

18:46

click on your article to find

18:48

them. But the nice thing is

18:50

that the article describes them. an

18:52

iostat report that shows all activity

18:54

on each device here is showing

18:56

this screenshot since the last system

18:58

boot. Although it's not the easiest

19:00

tool to use, iostat reports extremely

19:02

granular information about each of your

19:04

physical storage statistics and by default,

19:06

as shown above, iostat reports all

19:08

activity on each device since the

19:10

last system boot. So there's just

19:13

do iostat and then MD0, SDA,

19:15

SDB and so on, these are

19:17

Linux devices and lists all the

19:19

iO that's happening on that list.

19:21

of devices that you provided as

19:23

arguments. And the extended statistics for

19:25

deeper insights, let's take another look

19:27

at the same system, this time

19:29

using the arguments, minus lowercase X

19:31

for extended statistics and lowercase S

19:33

for short, 80 column output for

19:35

terminal width reasons, and that gives

19:37

a bit of a different output,

19:39

meaning... that this time we get

19:41

the additional column percent utilization. This

19:43

column tells us what percentage of

19:46

storage devices time is spent in

19:48

idle. If you have several devices

19:50

in the same array as the

19:52

above system does you should expect

19:54

most of these drives that to

19:56

be roughly similar as this screenshot

19:58

provides. So on the other hand,

20:00

let's say deaf SDF above shows

20:02

60% utilization. It is the sipping

20:04

drives in the same array that

20:06

only showed 20 apiece that would

20:08

indicate a problem. Most likely deaf

20:10

SDF is spending a lot of

20:12

time retrying operations before getting a

20:14

valid result. Thus in turn which

20:16

suggests that we should replace the

20:19

SDF before it fails outright. Then

20:21

there is the built-in Z-pool Iostat

20:23

command which is the simplified storage

20:25

insights for the ZFS pools and

20:27

many of you have probably used

20:29

this already in the past invoked

20:31

with arguments or without them. Yeah,

20:33

without them first, Z-pool Iostat produces

20:35

perhaps the simplest output of all

20:37

the tools we'll view. In the

20:39

nutshell, Z-pool Iostat offers roughly the

20:41

same information that Iostat does, instead

20:43

of offering it for each individual

20:45

physical storage device in the system,

20:47

Z-pool Iostat offers that for data

20:49

as applicable to each Z-pool on

20:51

that system or each device in

20:54

depth. Which Z-pool Iostat doesn't provide

20:56

is the same level of per-depth

20:58

statistics for a... zi pool by

21:00

invoking zi pool isiostat dash v

21:02

for the both so we can

21:04

drill down into each individual device

21:06

that make up the pool. For

21:08

the most part we'd recommend using

21:10

real iostat to inspect individual drive

21:12

metrics especially when investigating storage bottlenecks

21:14

even on an open ZFS system

21:16

and the ZFS-centric organization of data

21:18

on ZIPiostat is a strong advantage.

21:20

There's no practical way to reassemble

21:22

when they last iostat output to

21:24

display activity at a per pool

21:27

or VDF level. If your focus

21:29

is higher up the stack than

21:31

the Rob physical hardware, ZIPOLIostat remains

21:33

the recommended tool. Okay, then we

21:35

have latency metrics. I think Alan

21:37

was a bit involved in that

21:39

as far as I can recall.

21:41

So far we've learned toward Iostat's

21:43

more detailed and lower level metrics,

21:45

dismissing ZIPOostat's simpler output. So this

21:47

was added after the original Open

21:49

ZFS came out and they also

21:51

referenced their own. 2020 article which

21:53

includes here a built-in histogram accessible

21:55

with the W flag. So in

21:57

that screenshot they say we can

22:00

see a table showing the amount

22:02

of data of various types in

22:04

columns which was serviced within a

22:06

given maximum time frame. This is

22:08

a very very granular breakdown of

22:10

latency experienced on the system. It

22:12

can be a tool to pinpoint

22:14

storage bottlenecks on the system. So

22:16

you can say, oh this number

22:18

of bytes in the read column

22:20

happened between one millisecond

22:22

and two milliseconds for

22:24

example. Here they describe the cues a

22:27

little bit more, the read and right

22:29

cues. and we can see individual read

22:31

and write columns for disk wait,

22:33

sync queue wait, asink queue wait,

22:35

disk wait is the amount of

22:37

time required waiting for actual hardware

22:40

to complete an operation and the

22:42

sync queue wait is the time

22:44

on operation spent in synchronous IOCUs

22:46

whereas asink queue is the time

22:48

in operation, spend in asynchronous queues.

22:50

So we don't wait for the

22:53

reply from the storage system that

22:55

the rides had happened. Then there

22:57

is the tools he's mentioned. Z-pool Iostat

22:59

is good in itself, but there is

23:01

Z-top. Z-top is a simple and useful

23:04

tool that shows you how busy each

23:06

of the data sets in your pool

23:08

is at the moment in a top-style

23:11

way. Z-top supports both command line arguments

23:13

and in application interactive commands which recognize

23:15

and or filter its output when

23:17

run without arguments you simply

23:19

see a list of data sets

23:22

on your system and their individual

23:24

activity level. The...

23:26

is good? Yeah, installing Zetop is

23:28

a little sub paragraph they

23:30

have. So if you're on free

23:32

PhD, you can install it

23:35

from the ports collection, package

23:37

install Z-top, and it's also

23:39

available for Linux in

23:42

the various repositories each

23:44

distribution provides. They

23:48

talk a bit about a couple hurdles

23:50

for some distros, but we can skip

23:52

that since this is a PSD podcast.

23:55

So there's IOSZTAD, IOSTAD with a Z

23:57

in there instead of a S flexible

23:59

alternative. for data set level monitoring.

24:01

This one is another tool for

24:03

monitoring. Your OpenZFS pools activity on

24:06

a per data set level and

24:08

it uses case that information in

24:10

much the same way that Ztop

24:12

does. But the output is a

24:14

bit differently organized. For the most

24:16

part these tools display the same

24:18

information in roughly similar ways. The

24:20

important difference is that Ztop mimics

24:23

the top command in its output

24:25

format. In the arguments also an

24:27

interactive features in contrast to this.

24:29

Iostat is designed to more closely

24:31

resemble the Iostat command and instead

24:33

of as counterpart Zpool Iostat. And

24:35

that's why when you invoke that,

24:37

Iostat with a Z in the

24:40

middle performs much of the standard

24:42

Iostat tool output. It spits out

24:44

a single table showing you a

24:46

summary of all activity for each

24:48

mounted data set. It's the most

24:50

recent system boot then exits. And

24:52

you can add arguments to it

24:54

with a... Lowercase N, for example,

24:57

you instead get a series of

24:59

reports for each N seconds, and

25:01

if you provide the O switch,

25:03

you instead get the same data

25:05

in a continually refreshing screen-friendly format

25:07

like Zetops. Installing is fair and

25:09

easy. You get Iostat by... Oh,

25:11

it's not officially made into repositories

25:14

yet, I see, but it's a

25:16

simple Python 3 script with those

25:18

special requirements, and they link to

25:20

its project page on GitHub. So,

25:22

ah, it's interesting. Jim Salter wrote

25:24

this tool as far as I

25:26

can see here from his GitHub

25:29

page, and that's where he also

25:31

added a couple more information about

25:33

usage and how to install it.

25:35

That's why we see this article

25:37

from him. In conclusion, although most

25:39

users will never need to use

25:41

these tools, professional admins might, and

25:43

those might be a mindset to

25:46

dig deep and truly understand how

25:48

the systems work, can be one

25:50

or more of these tools. They

25:52

can address almost any performance query

25:54

and resolve storage bottlenecks effectively. At

25:56

Clara we specialize in open ZFS

25:58

and free BSD solutions, helping businesses

26:00

optimize storage performance and resolve. of

26:03

the bottlenecks efficiently and whether you

26:05

need expert guidance, custom and development

26:07

or proactive support or team is

26:09

here to help you get the

26:11

most out of your storage system.

26:13

Those those tools really weren't named

26:15

with a consideration for the podcast.

26:17

The IOSAT with a set in

26:20

there that's when you when you

26:22

spell it out it's difficult. IOSZ

26:24

stat. Okay,

26:35

now the headlines are done.

26:37

We have the news roundup.

26:39

At first in the news

26:42

roundup, we have open, open,

26:44

BGPD 8.7 release. This is

26:46

a tuckwister, yeah. By, contributed,

26:49

by, contributed, by, Roudia, from

26:51

the Flappy Bird, a synchronization

26:53

department. I got, I got,

26:56

I got the joke. We

26:58

have released open PGPD 8.7

27:01

which will soon be arriving

27:03

in the open BGPD directory

27:05

of your local open BSD

27:07

mirror. This release includes the

27:10

following changes to the previous

27:12

release. Cash, the adjust rib

27:14

out for sessions that have

27:16

not been down for more

27:19

than one hour. This significantly

27:21

improves synchronization time of peers

27:23

that flat. Implement RFC 8538

27:25

notification message support for BGP

27:28

graceful restart. Add support for

27:30

RFC 864 extended messages in

27:32

BGP GPD, BGP, yeah I

27:34

can't even press it, add

27:37

additional endpoints to the query

27:39

in the adjust ribbon and

27:41

adjust rib out, bump internal

27:43

message size limit to 128K

27:46

and handle up to 10,000

27:48

ASPA, SBAS entries as suggested

27:50

in draft IETF, SIDEROPS, ASPA

27:52

profile. Various improvements to the

27:55

I-BAFP API. including a new

27:57

reader API which is used

27:59

to make all message parsing

28:01

in BGPD memory safe, added

28:03

support for IP SEC and

28:06

TCP MD5 to RTR sessions.

28:08

Open BGPD portable is known

28:10

to compile and run on

28:12

previously, net BSD and the

28:15

Linux distributions, Alpine, Debian, Centrose,

28:17

Ralph, Rocky, Fodor, Sousa, SLE

28:19

and New Bunto. is our

28:21

hope that packages take interest

28:24

and help adapt open BTPD

28:26

portable to make to more

28:28

distributions who welcome feedback and

28:30

improvements from the broader community.

28:33

Cool, thanks, congratulations, well done.

28:35

Yep, always good to see

28:37

progress in tools that the

28:39

whole internet runs on, especially

28:42

when these are developed by

28:44

Obviously who focus a lot

28:46

on security. Next is ever

28:48

busy, Dr. Brian Robert Callahan,

28:51

porting different things to operating

28:53

systems we use, or less

28:55

use more often. This one

28:57

is G-N-A-T-A-D-A compiler ported to

29:00

macroS-A-R-64. And he

29:02

has written about this work and

29:04

what it involved. So after getting

29:06

a port of GDC, working on

29:08

his new Macbook Pro, there are

29:10

still two languages left in the

29:12

GCC suite that I don't have.

29:15

ADA and Go. Some searching around

29:17

makes it easy. Do you say

29:19

ADA or Ada? So that makes

29:21

him pretty clear that GCC goes

29:23

not yet really on the table

29:26

to Macos, but there should not

29:28

be any reason we can't add

29:30

Ada to our GCCs, we're seeing

29:32

that there's already support for Macos

29:34

AR-64 in the repo. Okay, but

29:37

tries I might, I could not

29:39

find any pre-compiled packages for it.

29:41

I guess part of the issue

29:43

is that Macos, AR-64 supports, not

29:45

fully upstream, did the GCC Propray,

29:47

instead, Ian Sancento, has a get-up

29:50

report-up report, includes the necessary changes

29:52

to full support it. I used

29:54

this GCC 14 branch repository to

29:56

build GDC. Let's go to work.

29:58

Virtualizing Nakos. So he doesn't have

30:01

a resetter on this machine. He

30:03

knows that it takes all of

30:05

two seconds to install it, but

30:07

he also wanted an excuse to

30:09

play around with Apple's virtualization framework.

30:12

After some googling around, he settled

30:14

on using virtual body as his

30:16

virtualization manager. Never heard of it.

30:18

It's linked there from the article.

30:20

And I made installing a virtualized

30:22

copy of Sequoia 5.5.5. Just want

30:25

to say, or want to install

30:27

from the internet, choose the version

30:29

you want to install and away

30:31

you go. Okay. So, step one,

30:33

finding a binary on GNET, GNET.

30:36

So why did I install Rosetta?

30:38

My suspicion was that someone had

30:40

a binary package of Nut for

30:42

Macosx8664, but I looked in the

30:44

usual places. Home brew, package source,

30:46

Macports, and Fink. and none of

30:49

them had a package. I was

30:51

beginning to wonder if our project

30:53

was going to end before it

30:55

began. For that I, or that

30:57

is written in Ada, you need

31:00

an Ada compiler to compile it.

31:02

Got it? Compiler to compile it.

31:04

Yeah. I eventually stumbled upon A-A-L-I-R-E,

31:06

which builds itself as Aida's version

31:08

of Rust's cargo or O-Kama's O-PAM.

31:11

The A-A-A-A-L-H homepage directly states that

31:13

they have a recent A66X-86-86-86-8664. That

31:15

was our way in. I followed

31:17

the tutorial to get the ALR

31:19

binary installed on the virtual machine

31:21

and got a copy of the

31:24

net compiler which happened to be

31:26

version 14.2.0. That's great, because that's

31:28

the same version we built with

31:30

our GDC compiler and what we

31:32

will be building on the GCC14

31:35

branch repository. Okay, on to step

31:37

two. I added this a liar

31:39

provided net to my path and

31:41

set up the GCC14 ranch repository

31:43

to prepare to prepare to build.

31:46

Make sure it does go all.

31:48

that's the front of your pass

31:50

so that client doesn't get picked

31:52

up instead. Okay, this first pass

31:54

we needed to build a compiler

31:56

that is built effectively from Likewise

31:59

X8664 will... one effectively on Macos

32:01

X8664 but produces code that runs

32:03

on Macos AR64. Got it? We

32:05

also need to remember that all

32:07

the build tools understand both X8664

32:10

and AR64. That will be a

32:12

big help for us. So he

32:14

provides the environment variable to make

32:16

this possible. It's a long one

32:18

so you can find it in

32:20

the blog post. Then we can

32:23

make our build with G make

32:25

dash capital V equals 1 and

32:27

then J4. He installed a new

32:29

make from homebrew since it's much

32:31

newer than what he got from

32:34

the command line tools and from

32:36

now he only was going to

32:38

worry about getting nut up and

32:40

running once we have it then

32:42

I can worry about combining nut

32:45

and GDC together into one suite.

32:47

Step 3 Building a Stage 2

32:49

nut native compiler Now we can

32:51

use this new compiler to build

32:53

another new compiler, compiler, the compiler.

32:55

This new compiler will be built

32:58

with the compiler we just built,

33:00

because the compiler we just built

33:02

produces code for A.R. 64, Apple

33:04

Darwin, 24, 2.0, even though it

33:06

runs on X86, Apple Darwin, 21.6.0.

33:09

So it is finished compiling GCC,

33:11

that G. C.C. will be a

33:13

native Macoese A. A.R. 64 compiler.

33:15

He needs to reset his path

33:17

to get rid of the a

33:19

liar provided provider compiler. We don't

33:22

need it anymore. And then you

33:24

can create a new build directory

33:26

and run your configuring vocation. So

33:28

what we are saying here is

33:30

that our built machine is effectively

33:33

now Mac OSX86 underscore 64, but

33:35

you would like to build a

33:37

compiler that runs on Mac OS

33:39

AR64 and produces code for Mac

33:41

OS AR64. Very quickly, turns out

33:44

that stage one, collect two binary,

33:46

was miscompiled and segfaults when it's

33:48

used. When I did try to

33:50

overcome this, the copy of native

33:52

collect two binary from his GDC

33:54

compiler to the nut compiler, everything

33:57

was happy after that. Okay. So...

34:00

Step 4. Now that I have

34:02

a native Net on Macos, A.R.

34:05

64, I want one single GCC

34:07

package that will have all the

34:09

languages that are available. Ada, C,

34:11

C, C+, D, 4, Tran, Modular,

34:13

2, Objective, C, and Objective, C,

34:15

Plus Plus. I moved the Tarball

34:18

on the Stage 2 net compiler

34:20

to my host machine, shut down

34:22

the virtual machine and installed the

34:24

Stage 2 compiler. I then put

34:26

the Stage 2 compiler in front

34:28

of the GDC 2. That's all

34:30

we need for now. All of

34:33

build, host and targets are now

34:35

AR 64, Apple 64, Apple Darwin

34:37

24.2.0, a fully native compiler. And

34:39

GCC will detect that automatically and

34:41

create a new native compiler. This

34:43

build is running without problems, then

34:46

for one last time install to

34:48

a fake directory, tar it up,

34:50

and move the old stage to

34:52

compiler and all GDC compiler and

34:54

install this new complete GCC. And

34:56

conclusion, I've come... I've uploaded the

34:59

Tarball here for those that wanted,

35:01

so he has the final version

35:03

on his blog. You would need

35:05

to have the command line tools

35:07

installed. If someone knows how to

35:09

get GCC to auto-select between X

35:11

code and the command line tools,

35:14

please let me know. You'll also

35:16

need to put up slash up

35:18

slash GCC14 slash bin at the

35:20

front of your path to use

35:22

it. Even better? No! No one

35:24

will ever need to have to

35:27

go through the hassle of bringing

35:29

up Ada support for MacOS AR

35:31

64 again. We now have a

35:33

compiler that can be used as

35:35

a bootstrap for future releases of

35:37

GCC. Maybe we'll even have some

35:40

package managers provide not compilers since

35:42

the hard work has been done.

35:44

Yep. Thank you again, Dr. Brian

35:46

Robert Callahan. I just so confused

35:48

why this all has to be

35:50

done. Don't don't tell me different

35:52

architectures different suppliers needing to compile

35:55

other suppliers No, it's okay. But

35:57

why can't the compiler vendor? I

35:59

provide compiler is compiled they don't

36:01

think that that's the question maybe

36:03

why do they support like

36:05

that's the who needs to it's

36:08

very easy to move go around

36:10

us next next we have a

36:12

blog post on a Tom Fatigue

36:14

dot net Modify an OmniOS

36:17

service parameters. I was three

36:19

years old when I needed

36:21

to change some parameters of

36:24

my Prometheus service on OmniOS.

36:26

It runs via package source

36:28

and the provided SMF and

36:30

modifying the running parameters is

36:33

not as simple as editing

36:35

an RC.D file. I first read

36:37

the SVCS services. report service

36:39

status man page but that was of

36:41

no help for my need. Then I

36:44

went to the service admin manipulate services

36:46

into this man page and I still

36:48

didn't know how to do the modifications.

36:50

I finally found the service config import

36:53

export modify service configurations and started to

36:55

see the white. I'm not very skilled

36:57

with this OS and I didn't understand

36:59

the properties part at least how I

37:01

was supposed to modify them. But

37:03

I know how to use VI

37:05

and I can read and write

37:07

XML files, a dangerous combination. So

37:09

I may make the example one

37:12

and two and export the service

37:14

description and modify the XML file

37:16

and import the service

37:18

description back at SVCS dash

37:20

a grab Prometheus, SVC config export

37:23

Prometheus, said and then import

37:25

it again. Thank to Joshua M.

37:27

Clulo. I learned a smart way of

37:30

modifying the SMF properties using SVC

37:32

config dash SF MRI edit prop.

37:34

It will open a text editor

37:36

with a bunch of commented out

37:38

stuff which represents the current state

37:41

of the service or service instance.

37:43

You can uncommon what you want,

37:45

save and exit and it will run

37:48

the commands. You can then run SVC

37:50

admin refresh. The service to get a

37:52

new snapshot and restart it. You can also

37:54

use SVC config as a captive shell to

37:57

manipulate properties as such. To modify the user

37:59

and group user... in the service I

38:01

simply went SVC config dash s

38:03

package source Prometheus edit it and

38:05

then and then did it then

38:08

did a restart there we go

38:10

I was lost when it comes

38:12

to Prometheus this is also a

38:14

handy if you want to change

38:16

the dash dash storage tsp. retention

38:18

time or the retention size parameters

38:21

as they were passed this command

38:23

line arguments look for a modified

38:25

start exact property. That's all for

38:27

now, another lesson learned. Okay, that's

38:29

on the US and we continue

38:32

with an even earlier Unix or

38:34

earlier Unix days because we have

38:36

another article from Chris Seiberman about

38:38

the history and use of ETC

38:40

slash glob in early Unixies. Never

38:43

heard of this file or what

38:45

is this about? This is about

38:47

exactly that article. One of the

38:49

innovations that the V7 born shell

38:51

introduced was built in shell wildcard

38:53

globbing, which is to say expanding

38:56

things like asterisk, the question mark,

38:58

and so on. Of course, e-lux

39:00

had shell wildcards well before version

39:02

10, but in V6 and earlier,

39:04

the shell didn't implement globbing itself.

39:07

Instead, this was delegated to an

39:09

external program. ETC glob. This affects

39:11

things like looking into the history

39:13

of unique shell wildcards, because you

39:15

have to know and look. at

39:18

the glob source, not the shell.

39:20

As covered in places like the

39:22

v6 glob manual page, that file

39:24

had its own manual page, turns

39:26

out the glob program was passed

39:28

a command and its arguments, already

39:31

split up by the shell, went

39:33

through the arguments to expand any

39:35

wild cards it found, then executed

39:37

the command with the now expanded

39:39

arguments. Okay, the shell operated by

39:42

scanning all of the arguments. or

39:44

on escaped wild cards. If any

39:46

were found the shell executed ETC

39:48

glob with the whole show. Otherwise

39:50

it directly exacted the command with

39:53

its arguments and quoting wild cards.

39:55

use the hack that will be

39:57

discussed later. This basic ETC glob

39:59

behavior goes all the way back

40:01

to UNIX version 1 where we

40:03

have shell dot S, yeah not

40:06

C or nothing, shell dot S

40:08

and in it we can see

40:10

that invocation of ETC glob in

40:12

version 2 glob is one of

40:14

the programs that have been written

40:17

in C glob.c and in version

40:19

3 we have a sh sh

40:21

h dot 1 that mentions ETC

40:23

glob and has an interesting box

40:25

note about it. If any argument

40:28

contains a quoted asterisk or question

40:30

mark or opening bracket, then all

40:32

instances of these characters must be

40:34

quoted. This is because as H

40:36

calls the glob routine whenever an

40:38

unquoted asterisk question mark or opening

40:41

bracket is noticed. The fact that

40:43

other instances of these characters occurred

40:45

quoted is not noticed by glob.

40:47

This section has disappeared in the

40:49

version 4 shell manual page which

40:52

suggests that the version 4 shell

40:54

and EDC Glob had acquired the

40:56

hack that they used in version

40:58

5 and 6 to avoid this

41:00

particular problem. How escaping wildcards works

41:03

in version 6 and 5 is

41:05

that all characters in commands and

41:07

arguments are restricted to being 7-bit

41:09

ASCII. The shell and EDC Glob

41:11

both used the version or the

41:13

8th bit to mark quoted characters.

41:16

Which means that such quoted characters

41:18

don't match their uncoded versions and

41:20

won't be seen as wild cards

41:22

by either the shell when it's

41:24

deciding whether or not it needs

41:27

to run ETC glob or by

41:29

slash ETC glob itself when it's

41:31

deciding what to expand. However, obviously

41:33

neither the shell nor ETC glob

41:35

can pass such marked as quoted

41:38

characteristics to actual commands. So each

41:40

of them strips the high bid

41:42

from all characters before exacting actual

41:44

commands. This is clear in the

41:46

version 5 glob.c source as a

41:48

side note look at for how

41:51

cat and as ends every character

41:53

with octal 0177 to to drop

41:55

the high bit. You can also

41:57

see it in the version 5

41:59

shell C code where you want

42:02

to look at trim and also

42:04

to define for quote at the

42:06

start of shell.c and how it's

42:08

used later. The PS goes. I don't know

42:10

why expanding shell wild cuts used it as

42:12

a separate program in version 6 and earlier

42:15

but part of it may have been to

42:17

keep the shell smaller and more minimal so

42:19

that it required less memory. And the

42:21

PPS reads, see also Stephen

42:23

Arborn's 2015 presentation from BSD

42:25

Can, I was there, which

42:27

has a bunch of interesting

42:29

things on the v7 shell

42:31

and confirms that EDC glob was

42:34

there from version 1. Huh,

42:36

interesting. So that word was, but

42:38

is not there anymore because

42:40

newer shells are now big

42:42

enough to fit in memory

42:44

and have disintegrated directly.

42:46

It's much how much you have

42:49

installed. Oh yeah. BSD now is sponsored

42:51

by Tarsnap. Everyone needs backups and

42:53

Tarsnap ensures that your backups are not

42:55

only safe but also secure. Your

42:57

data is encrypted on your device before being sent

42:59

to the cloud. You can be sure that only

43:01

you have the ability to read your data. Tarsnap

43:03

takes your data and works out what is duplicated.

43:05

It then assembles the data into compressed blocks and

43:08

cricks them with your local private key and this

43:10

key never leaves your system. The data is then

43:12

uploaded into the cloud. Even if someone is able

43:14

to obtain your data in the cloud, they will

43:16

not be able to decrypt it and access your

43:18

files. Tarsnap is easy to use. If you can

43:20

use TAR, then you can use Tarsnap. Tarsnap is

43:22

pre-paid, so you never have to worry about an

43:24

unexpected bill. Tarsnap is fully-paid, so you never have

43:26

to worry about an unexpected bill. Tarsnap is fully open-source, allowing

43:28

you to worry about an unexpected bill. Tarsap, for helping make

43:31

a help, for helping make a help, for helping make the

43:33

software, for helping make software, for helping make a software, for

43:35

helping make a software, for helping make a software better, for

43:37

helping make software better, for helping make, for helping make software,

43:39

for helping make, for helping make software, for helping make, for

43:41

helping make software, for helping make software, for helping make software

43:43

better, for helping make software better, for helping make, for helping

43:45

make, for helping make, to learn, for helping make All

43:55

right, we get questions and you can

43:57

ask us questions by sending an email

43:59

to feedback. BSD now. TV. You can

44:01

also ask the questions on the telegram

44:03

group but you probably won't get replies.

44:06

You can find that T.E. slash

44:08

BSD now. Wow I remembered that's

44:10

been a long time. This week

44:12

we have a question from Nelson

44:15

and Nelson writes to tell us

44:17

about a video they saw on

44:19

the internet. The Unix historical society

44:22

list yesterday which I read this

44:24

morning which I read this morning

44:26

which I don't know when he

44:28

sent this. has two links to

44:31

a talk by Kirk McKusick about

44:33

the origins of the BSD Damon

44:35

character and their YouTube links so

44:38

they'll be on our show notes.

44:40

It was a fun 40 minute

44:42

watch and a definite must see

44:44

for BSD now buffs. The second

44:47

link has cleaned up audio but

44:49

is in a format my CentoS7

44:51

workstation cannot display the first work

44:54

finer I had no trouble listening

44:56

to. Thanks for letting us know

44:58

about this, Nelson, because we probably

45:00

would have forgotten to mention it.

45:03

I watched this. It was definitely

45:05

a pleasure to see the talk

45:07

and I so saw George Neville

45:10

Neal again. I haven't seen him

45:12

in a while so he was

45:14

running or holding up some of

45:16

these shirts that the BST Damon

45:19

was on. So Kirk has a

45:21

nice collection of these shirts and

45:23

so that was a well-made talk

45:26

with you know the people who

45:28

were there from the very beginning

45:30

especially Kirk McKusick collecting these t-shirts.

45:32

That's certainly yeah well worth watching

45:35

if you know. or want to

45:37

know more about the history of

45:39

that little statement that we all

45:42

have on our system. Especially if

45:44

you're a previous user or a

45:46

BSD's in general. Okay, anything left?

45:48

Oh, I think I shouldn't close

45:51

without mentioning BSD and L, which

45:53

is a nice conference that I

45:55

was made aware of through the

45:58

Fettiverse. So BSD.N.L. I think it

46:00

is. No, it's not. Sorry, I

46:02

need to find that. I... Was

46:04

it a different website? Yeah, or

46:07

so it's a nice little conference

46:09

in Utrecht, the Netherlands, and I

46:11

know the dates because I submitted

46:14

two talks to them, because just

46:16

to be sure that at least

46:18

one of them gets accepted, and

46:20

the conference is on the 12th

46:23

of April, that's a Saturday in

46:25

Utrecht, and the events of BSD&L.NL.

46:27

That's why I couldn't find it.

46:30

It's not directly... under the URL.

46:32

I was suggesting it. So events.bstdnl.n.l.

46:34

and then slash early 25, but

46:36

I think if you go to

46:39

the main URL, then you can

46:41

also find it. There you can

46:43

still find the call for papers.

46:46

It's still out. Do I see

46:48

how long or when that closes?

46:50

Oh yeah. You can still submit

46:52

until the 14th of... March, March,

46:55

easy. 14th of March 2025, they

46:57

look for talks still. Any particular

46:59

topics? No, I don't see them.

47:02

I will be there. It's in

47:04

the maximum, Maximus brewery, Pratems Plats

47:06

2A, 344, 54, and A in

47:08

Utrecht. So I haven't been there.

47:11

Apparently it's not the first conferences

47:13

they are doing in this place.

47:15

So this is the second one.

47:18

I must have missed the first

47:20

one. Best way to go to

47:22

the second one. either as a

47:24

speaker or just listening in. It's

47:27

going to be fun. I think

47:29

and that's why I submitted a

47:31

talk. Are you speaking in Dutch?

47:34

No, I can't speak a single

47:36

word in Dutch. It's close to

47:38

German or German dialect, but I

47:40

would probably make more enemies trying

47:43

to speak. You too much to

47:45

learn. I will be happy to

47:47

speak in English all the time.

47:50

I will be there. and I

47:52

will take the train so that's

47:54

also a nice way of getting

47:56

through the country side and I

47:59

like being at smaller events that

48:01

are not as big as the

48:03

major conferences because there are other

48:05

people going there, they are people

48:07

who couldn't meet otherwise at other

48:09

bigger conferences or they haven't met

48:12

me because hey they hadn't had

48:14

a chance yet. So it's also

48:16

good to see new places, new

48:18

people and given a popular, or

48:20

I'm not sure it's a popular talk,

48:22

but a BSD talk and a BSD

48:24

event from someone who has been around

48:26

for a while. is probably drawing a

48:29

lot of other people to that

48:31

conference because they want to see

48:33

me or listen to me. So

48:35

why not support the conference in this

48:38

way? Benedict, they can listen to you

48:40

every week. Yeah, it's not just they

48:42

have a podcast they could go to.

48:44

But this one is live. I mean,

48:46

they asked me whether I will be

48:48

okay to get streamed or if people

48:51

record this somehow, I would be, yeah.

48:53

a remiss to say no because

48:56

hey I've been recorded for

48:58

a lot of years now.

49:00

Imagine, imagine what the unedited

49:02

Benedict. Oh yes, you can

49:04

get that if you went

49:06

to B&S, you know. All

49:08

the AI has made their

49:10

changes to my voice. Raw, raw

49:12

Benedict. Yeah, the uncut version

49:15

of me. Uh, what are your

49:17

plans? You will be at Fuz then?

49:19

Yeah. I mean, yes, I will be

49:21

at Boston this time, unfortunately. I know

49:23

there's always a gathering of BSD people

49:25

there. They also have a deaf room.

49:28

Yeah, there's a deaf room this year.

49:30

There's no free BSD Dev Summit. I

49:32

will be staffing the free BSD and

49:34

through BSD Foundation table the majority of

49:36

the time. I'll be really easy to

49:38

find if you want to come find me.

49:40

And man, there might be loads of

49:42

stickers. There might be no stickers. There

49:45

might be no stickers. We'll find out.

49:47

Who knows? Yeah, so you should show, you should show

49:49

up, you should show up early and bring me a

49:51

coffee because I'm going to probably struggle

49:53

to find coffee in Brussels in the

49:55

morning. I could have been there really, or I

49:57

could have been there like 8 o'clock in the

49:59

morning. set up a table and

50:01

make sure that everything's waiting for

50:04

people to come. Yeah, it would

50:06

be great fun. It's a wonderful

50:08

event. There'll be more people than

50:10

you possibly knew existed in the

50:13

world all in once more. It's

50:15

big. A lot of open source

50:17

projects are there. The popular ones

50:19

are definitely showing themselves and the

50:22

dev rooms are very focused on

50:24

particular operating systems or topics or

50:26

programming languages or what have you.

50:28

Yeah, certainly interesting to be there

50:31

in person. They also have live

50:33

streams from many of these rooms,

50:35

the major talk rooms anyway, and

50:37

some smaller ones as well. Good,

50:40

and I think we should leave

50:42

you. Oh, by the way, did

50:44

you see, because I was traveling,

50:46

did you see any of the

50:49

chaos communication Congress videos? We can

50:51

talk about that, we can talk

50:53

about next week. Yeah, next week.

50:55

All right, makes sense. To entice

50:57

people to come back next year,

51:00

next week. I expect JT to

51:02

edit that remark out when he

51:04

gets to edit it. Yeah, he

51:06

never heard this what I just

51:09

said. Yeah, no one, no one

51:11

spoke ever talking about next week.

51:13

Saving up the anecdotes. Okay. Fine

51:15

then. We leave you with that.

51:18

Have a nice week until the

51:20

next one and always be BSDing.

51:22

Not sure.

Unlock more with Podchaser Pro

  • Audience Insights
  • Contact Information
  • Demographics
  • Charts
  • Sponsor History
  • and More!
Pro Features