FreeBSD package repo with specific versions

illuria’s ProfilerX runs on LureOS, which is our custom operating system based on FreeBSD.

To update the operating system we rely on two tools, pkg(8) for packages and freebsd-update for the base.

Initially, I’ve setup our poudriere and package repo in the FreeBSD way, so our URL looks like /FreeBSD:13:amd64/devel and /FreeBSD:13:amd64/prod. This is done by expanding the ${ABI} variable, similar to what FreeBSD does in FreeBSD.conf.

Initially, this worked fine, but now that there’s a new FreeBSD out there (13.2), I didn’t want to put the new packages in the old URL, but rather have a URL for each major.minor version. This is mostly for the enterprises who take their time to upgrade software.

Turns out the easiest way to do this is (after reading the pkg.conf(5) manual page) is to use the VERSION_MAJOR and VERSION_MINOR variables.

The new LureOS will use /${ABI}/${VERSION_MINOR}/repo, which will expand to /FreeBSD:13:amd64/1/devel, making it easier for us to extend life after a new release.

That’s all folks…

Reply via email.

Antranig Vartanian

May 12, 2023

The Pixelmator Team released Photomator a month ago (well, technically renamed), one of the things on their roadmap was Photomator for Mac.

I submitted a form to join the TestFlight Beta and I got in! I’ve been using it for couple of days now and I absolutely love it.

The Photomator Team sent an email saying “Photomator will be released on ███ ██th, so we ask all testers to hold back on sharing any screenshots of Photomator for Mac until this date.

While I can’t share any screenshots, I will share a photo edited using Photomator for Mac.

Can’t wait for the official release!

That’s all folks…

Reply via email.

Apple Arcade’s TMNT Splintered Fate talking Open-Source and InfoSec

Ever since my Sony PS4 Pro’s HDD broke down last year I’ve been using my iPad as my main gaming device. There are some awesome games such as Moonshot, Dead Cells+ and my personal favorite, LEGO® Star Wars™: Castaways.

A day (or two, I’m not sure) ago, Viacom International Inc. and Paramount Global in collaboration with Nickelodeon released TMNT Splintered Fate. I’ve been playing the game for couple of hours now and I like it very much.

But this is not a game review, as I’m not a reviewer.

I’m not sure if people read/listen to game dialogs these days, but I do.

I just encountered DONATELLO, METALHEAD and APRIL talking about software, open-source and hacking.

Unfortunately, as I was not aware about the conversation, I had to restart the game from scratch twice so I record the the dialog.

Here’s a GIF and the dialog itself 🙂 I hope you appreciate it as much as I did.

Tmnt landscape

DONATELLO: Metalhead, can you give me an update on the microchip I gave you to analyze before?
METALHEAD: Affirmative. Analysis complete. Top-level configuration consists of standard StockGen operational code.
METALHEAD: Command controls for MOUSERs, etcetera.
DONATELLO: Open source?
METALHEAD: Both open source and proprietary, most of which we have already accessed in the past. However… the drive also contains inert sub-configurations, protected by military-grade encryption.
APRIL: What do you mean, ‘inert?’
METALHEAD: Hidden ‘ghost code’ that I posit contain command executables serving an unknown purpose.
DONATELLO: Hm. Kinda like the computer version of a sleeper agent.
METALHEAD: Affirmative.
APRIL: But why would Stockman hide ghost code inside his own code? It’s like he’s hacking himself.
DONATELLO: Yeah… it is strange. But we’ve gotta find out what’s in that hidden code before we can jump to any conclusions.
DONATELLO: Metalhead, do what you can to break through that encryption.
METALHEAD: Command acknowledged.
APRIL: Correct me if I’m wrong, Metalhead, but with this new info we should be able to… shall we say… borrow some StockGen tech to occasionally support you guys from afar?
METALHEAD: If you are equating ‘borrow’ with ‘hack into and control,’ that is affirmative, April O’Neil.
DONATELLO: Well! That’s exciting…
APRIL: Right? So, keep an eye open for some friendly support drops while you’re out there. We’ll have to keep it low key for now. Don’t want to set off any unnecessary alarms with the powers that be.

That’s all folks…

Reply via email.

Antranig Vartanian

April 27, 2023

I use the Skype mobile app once a month, usually to talk with friends and family. I just noticed this.

There’s a new tab/view named “Today” which shows a feed of articles… WHY???

Are all proprietary vendors trying to do “everything, everywhere” or what?

I have no words, I’m still shocked.

Reply via email.

Antranig Vartanian

April 25, 2023

This is just a test 🙂 I’m trying to configure and use child themes!

Update: Looks like it all works fine!

Reply via email.

Light & Dark Wallpapers for iOS: Solving a problem that Apple created

One of the best features of macOS is the ability to have Light and Dark, as well as Dynamic Wallpapers. You’d think that Apple has done some Apple-y way to implement that, but not at all.

It’s actually part of the High Efficiency Image File Format that allows sequences which are multiple time-related images.

Here’s an example of Ventura’s default wallpaper.

Ventura graphic

As you can see, it’s multiple images.

So a while back, I thought hey, I can make a Light & Dark wallpaper for myself, which I did.

SCR 20230414 w9m

For some reason, I forgot to use these wallpapers on my iPhone and iPad. Days ago I tried, and oh boy, Apple messed up again.

Here’s how the image looks like on iOS/iPadOS.

Heic

It just loops over the images and if you try to set it as a wallpaper it sets the first one. That’s it…

Anyway, now that I’ve complained about Apple, let me show you how to use “Dynamic” wallpapers. Again, this is just a hack, it would’ve been easier if Apple just tested their own wallpapers on iOS/iPadOS.

Let’s start with iOS first.

Setup two identical wallpapers using the new iOS lock screen customization thingie.

IMG 6553
IMG 6554

After that, setup a Shortcut automation to set the wallpaper based on time. In this case, I use sunset and sunrise.

IMG 6551

The automation itself looks like this.
IMG 6552

Fun fact: Apple messed up again. You know how your iPhone changes appearance automatically between Light and Dark mode based on sunset and sunrise? Well, it doesn’t match with Shortcuts automator! the Shortcut automator will set your wallpaper sooner than iOS changes its appearance. I guess they each have their own “calculation” of when sunset/sunrise is.

Okay, but this wasn’t that hard.

How about iPadOS. Well, that’s more complicated.

First, you need to have a copy of each wallpaper (light and dark), and then you have to put them into an Album.

After that, you need a Shortcut automation that looks for these images and sets them as a wallpaper. Another inconsistency that we really didn’t need between platforms…

Here’s an example.

IMG 0125

Here’s the automation itself

IMG 0127

Fun fact: Sometimes iPadOS will forget to set the wallpaper and you’ll get a notification that says “Missed automation” or something like that. I forgot to screenshot that, but if you have an example, please do send me an image.

Congratulations, now you have Dynamic Wallpapers on iOS/iPadOS.

That’s all folks…

Reply via email.

libucl wrapper in Oberon-2 for Vishap Oberon Compiler

Like I said in my previous post, this is a long project and it relies on a lot of things 🙂

Wrapping libxo was fun, but wrapping libucl was way more complicated. However, it is done. It’s not a complete port, however, it has the basics to get started. The goes is to have all wrappers match the their libraries.

The source is at antranigv/voclibucl and here’s a screenshot of what it can do.

Screenshot 2023 04 08 at 6 46 14 PM

Next, I will be improving these wrappers and then work on lzc, a.k.a. Lib_ZFS_Core 😉

See you soon 🙂

Reply via email.

Antranig Vartanian

April 7, 2023

At this point all I want is MarsEdit for iOS. I just noticed that I haven’t logged into my WordPress website using the admin interface for weeks, which means that MarsEdit is REALLY awesome.

On the other hand, the WordPress App on iOS is very much tied with the WordPress services such as WordPress.com and Jetpack. While I like both services and recommend them to friends, they are not for me, so that’s a pass…

MarsEdit for iOS, I’d even pay monthly for that.

Reply via email.

libxo wrapper in Oberon-2 for Vishap Oberon Compile

I’m working on a new project, which is still only 10% done. For that project I chose to use the Oberon–2 programming language and the Vishap Oberon Compiler.

After seeing libxo on FreeBSD, I’m not sure I can go back to write or printf, so I decided to write an Oberon wrapper for it.

I just finished the basics but it’s already usable for day-to-day outputs, containers/lists/instances and exit codes.

The source is at antranigv/voclibxo and here’s a screenshot of what it can do.

Screenshot 2023 04 05 at 4 40 45 PM

Next, I will be wrapping libucl in Oberon.

See you soon 🙂

Reply via email.

Antranig Vartanian

March 29, 2023

After weeks of thinking, I decided that I need to fork Jailer. Yes, I want to fork my own code. There are two reasons to do this.

  1. Keep the promise of Jailer being “very compatible with FreeBSD”
  2. Have a new version that pushes these limits of compatibility.

The fork is going to be named bant, which is Armenian for jail. I think we’re all tired of Greek names at this point 🙂

I’ll share the details of bant as soon as I have a prototype, which means at least couple of weeks.

Meanwhile, Jailer will be the very-compatible-with-FreeBSD version, that doesn’t brake things and allows new users to use Jails with ease.

Fingers crossed…

Reply via email.