Date: Thu, 23 Jan 2025 23:49:53 +0100 From: Steffen Nurpmeso <steffen@sdaoden.eu> To: Jacob Moody <moody@posixcafe.org> Cc: Tomoaki AOKI <junchoon@dec.sakura.ne.jp>, Warner Losh <imp@bsdimp.com>, Tomek CEDRO <tomek@cedro.info>, Gleb Smirnoff <glebius@freebsd.org>, Dave Cottlehuber <dch@skunkwerks.at>, bob prohaska <fbsd@www.zefox.net>, Sulev-Madis Silber <freebsd-current-freebsd-org111@ketas.si.pri.ee>, freebsd-current <freebsd-current@freebsd.org>, 9fans@9fans.net Subject: Re: [9fans] /usr/src and /usr/ports not git directories ? Message-ID: <20250123224953.HqgH-rtf@steffen%sdaoden.eu> In-Reply-To: <f6c74829-1192-4fc8-a474-318676655708@posixcafe.org> References: <Z4vk3009iSwuzG4K@www.zefox.net> <Z4__B0EQM-ce0qPE@cell.glebi.us> <C509F94C-2AC2-414F-90C0-355C69869D72@ketas.si.pri.ee> <Z5AQ1GcwX_MZw69G@www.zefox.net> <CANCZdfoHUsZusqMg_gWN5mB9P3xByGv_GfELi9Dd63CHto1igw@mail.gmail.com> <3782b90b-850f-4435-8b6d-bdb83753daea@app.fastmail.com> <CANCZdfruU=GR5DFWL7RQA4_yjh2-NHOB669wsOSL1DzZ3Fs7%2BQ@mail.gmail.com> <Z5Ehmzd4tp-Xf8Q8@cell.glebi.us> <CAFYkXj=nwjK%2BBnKg%2B0vkyeMu8XaLErCVe8Xr1g3%2BDOaOpeCBXA@mail.gmail.com> <CANCZdfq%2BTAW7v-1H71HSY=pFuO2FDkzAU04q_O-6SjTBdSFgSg@mail.gmail.com> <20250123074050.d9e331172e6b2f9dbc8b8dfd@dec.sakura.ne.jp> <20250123074932.170b7959bca443a934599a9c@dec.sakura.ne.jp> <20250123053721.KDVDBu1z@steffen%sdaoden.eu> <f6c74829-1192-4fc8-a474-318676655708@posixcafe.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Hello. Jacob Moody wrote in <f6c74829-1192-4fc8-a474-318676655708@posixcafe.org>: |On 1/22/25 23:37, Steffen Nurpmeso wrote: |> Tomoaki AOKI wrote in |> <20250123074932.170b7959bca443a934599a9c@dec.sakura.ne.jp>: |>|On Thu, 23 Jan 2025 07:40:50 +0900 |>|Tomoaki AOKI <junchoon@dec.sakura.ne.jp> wrote: |>|> On Wed, 22 Jan 2025 14:31:56 -0700 |>|> Warner Losh <imp@bsdimp.com> wrote: |>|>> On Wed, Jan 22, 2025, 2:11=E2=80=AFPM Tomek CEDRO <tomek@cedro.info>= wrote: |>|>>> On Wed, Jan 22, 2025 at 5:49=E2=80=AFPM Gleb Smirnoff <glebius@free= bsd.org> \ |>|>>>> On Wed, Jan 22, 2025 at 09:30:09AM -0700, Warner Losh wrote: |>|>>>> W> I think what you want is |>|>>>> W> |>|>>>> W> % git clone https://github.com/freebsd/freebsd-src --depth=3D1 = -b |>|>>> releng/14.2 |>|>>>> W> --single-branch fred --bare ... |>|>>>> W> % git checkout releng/14.2 |> ... |>|>>>> I really like this plan. So before checkout .git is 337M and after |>|>>> checkout |>|>>>> it is 975M, which is made by actual sources + .git. |> ... |>|>>> One question, would that imply git in base? :-) |>|>>=20 |>|>> Imply? No. ... |> The Plan9/9front people have -- btw -- created a Plan9-style |> interface to git, which is funny it seems (filesystem plus minimal That is, an implementation of their own that is capable to interact with normal git packs and objects (i think). |> programs using that, most are rc shell scripts. I track their |> repo via "normal" git (git://git.9front.org/plan9front/plan9front) |> without problems since June 2021 says the file system. ... |> What i mean seems to be that these guys already have the knowledge |> how to access the object database without any fancy and featureful |> and fat environment, so if FreeBSD would do that then possibly |> a simple from scratch checkout -- and nothing else -- would be |> possible with only shell tools and a small binary that fetches the |> blobs? Maybe even only possible with a very specific tree, you |> know? As in a readily prepared recipe (could be compressed and |> reside in the .git directory) that can be walked by the shell |> script(s) and accessed by the super minimal blob fetcher? | |Only getting bits of this conversation it's hard to infer exactly what |the goal is. Is the issue wanting to use git in a way that would require |it to be present within the base system, but encountering issues with doi= ng |so due to licenses? The git present in 9front is MIT licensed, and \ |has already |been used in part for OpenBSD's game of trees (got). I imagine taking \ I think they tend to keep the base system more "clean" as in the past, making use of pkg and ports even for tools they effectively need, ie, all developers necessarily need git, but it is not part of the base system as cvs as been in the past, for example. License, they try to go BSD etc, and replace GPL etc software as BSD etc software can replace it. There is GPL still, for example diff(1). |whatever |pieces are required to bootstrap what you want from git9 would be sensibl= e. |Git9 lacks some things (shallow clones for one), but is largely an entire= ly |usable interface to git, so I imagine it would have everything you \ |need if not |very close to what you need. That seems like a path forward, if people \ |don't |mind doing the port work. I myself was only thinking of really only a simplemost program that works like "git show" aka "git cat-file". Ie, they have mtree(8) or could otherwise create a snapshot of the checked out tree at a specific git revision, noting access rights etc (though this normally is not stored except for X bit in git i think), symlinks etc etc for one. And then walking this list of files and only fetching the file content from the (single, aggressively gc'd) git object .pack / .rev / .idx combo, cat(1)ing it into the fs, you know. So "nothing but a simple fetch-the-blob-data" thing. Like this no git(1) is needed at all to checkout a work tree from a repository with no checkout at all / that has checked out an all empty branch. |If you're looking for more technical details of how git9 works Ori \ |did a write up |for the IWP9 last year[0], which goes in to pretty good detail. | |[0] http://10e.iwp9.org/10iwp9proceedings.pdf Yes, i know; and thanks i have downloaded and read most of the stuff. I was only hoping for a quick statement on how complicated the envisioned program would really be, from a person who went down that road on its own. Or even, best, a "hey i have code which could be used for this with not much effort", you know.. --steffen | |Der Kragenbaer, The moon bear, |der holt sich munter he cheerfully and one by one |einen nach dem anderen runter wa.ks himself off |(By Robert Gernhardt) | |In Fall and Winter, feel "The Dropbear Bard"s pint(er). | |The banded bear |without a care, |Banged on himself for e'er and e'er | |Farewell, dear collar bear
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20250123224953.HqgH-rtf>