* * * * *

                   How I spent my day updating yak shaving

Updates.

That's all I've been doing this week on Belial, the annoying Mac Laptop [1].

Updates.

So I'm all ready to checkout our source code repositories:

-----[ shell ]-----
[sconner]belial:~/repo>svn checkout https://www.example.com/path/to/repo
-bash: svn: command not found
[sconner]belial:~/repo>
-----[ END OF LINE ]-----

Seriously?

I install the developer tools, and Subversion [2] is not installed?

-----[ shell ]-----
[sconner]belial:~/repo>git
usage: git [--version] [--help] [-C <path>] [-c <name>=<value>]
          [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
          [-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare]
          [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
          <command> [<args>]

These are common Git commands used in various situations:

start a working area (see also: git help tutorial)
  clone             Clone a repository into a new directory
  init              Create an empty Git repository or reinitialize an existing one

work on the current change (see also: git help everyday)
  add               Add file contents to the index
  mv                Move or rename a file, a directory, or a symlink
  restore           Restore working tree files
  rm                Remove files from the working tree and from the index
  sparse-checkout   Initialize and modify the sparse-checkout

examine the history and state (see also: git help revisions)
  bisect            Use binary search to find the commit that introduced a bug
  diff              Show changes between commits, commit and working tree, etc
  grep              Print lines matching a pattern
  log               Show commit logs
  show              Show various types of objects
  status            Show the working tree status

grow, mark and tweak your common history
  branch            List, create, or delete branches
  commit            Record changes to the repository
  merge             Join two or more development histories together
  rebase            Reapply commits on top of another base tip
  reset             Reset current HEAD to the specified state
  switch            Switch branches
  tag               Create, list, delete or verify a tag object signed with GPG

collaborate (see also: git help workflows)
  fetch             Download objects and refs from another repository
  pull              Fetch from and integrate with another repository or a local branch
  push              Update remote refs along with associated objects

'git help -a' and 'git help -g' list available subcommands and some
concept guides. See 'git help <command>' or 'git help <concept>'
to read about a specific subcommand or concept.
See 'git help git' for an overview of the system.
[sconner]belial:~/repo>
-----[ END OF LINE ]-----

So you have git but not Subversion.

Oh! You removed Subversion from the developer tools [3]!

Lovely.

Oh, I can install it with MacPorts [4]? Cool.

-----[ shell ]-----
belial:~ root# port install subversion
-sh: port: command not found
belial:~ root#
-----[ END OF LINE ]-----

Oh. Okay. I see. How do I get it installed? Oh, I need to install Xcode and
the Xcode command line tools [5]. I just have the command line tools.

Oh, XCode is only available via the Apple Store. I don't have an account to
use the Apple Store. I mean, I do, but there's no way in XXXX I'm going to
use my private account for work. Let me see if I can compile Subversion from
source.

I'll spare you the details—I can't. Subversion requires The Apache Portable
Runtime Project [6] and that project can't quite figure out the system and
I'm not versed enough (nor paid enough) to debug autoconf tool issues.

When I ask the Corporate Overlords about updates via the Apple Store, I'm
told that that particular issue hasn't actually been hashed out yet. Nice to
know that Mac users aren't second class citizens in our Corporate Overlords'
eyes. I end up creating a new account for use with the annoying Mac laptop
and hope any changes to my credit card can get expensed.

Oh, XCode is over 12G (Gigabytes) in size?

Sigh.

The initial estimated 104 hours to update [7] is actually turning out to be
rather accurate.

[1] gopher://gopher.conman.org/0Phlog:2022/02/17.1
[2] https://subversion.apache.org/
[3] https://developer.apple.com/forums/thread/666689
[4] https://ports.macports.org/port/subversion/
[5] https://www.macports.org/install.php
[6] https://apr.apache.org/
[7] gopher://gopher.conman.org/0Phlog:2022/02/21.1

Email author at [email protected]