Date: Thu, 23 Jan 2025 19:52:53 -0800 From: Bakul Shah <bakul@iitbombay.org> To: Mark Millard <marklmi@yahoo.com> Cc: FreeBSD Current <freebsd-current@freebsd.org> Subject: Re: [9fans] /usr/src and /usr/ports not git directories ? Message-ID: <29737771-BB47-4E1A-8085-A5F5BD0832C9@iitbombay.org> In-Reply-To: <48D63671-7A8F-4C7B-8115-F9F970DB5FA2@yahoo.com> References: <48D63671-7A8F-4C7B-8115-F9F970DB5FA2.ref@yahoo.com> <48D63671-7A8F-4C7B-8115-F9F970DB5FA2@yahoo.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> On Jan 23, 2025, at 7:30=E2=80=AFPM, Mark Millard <marklmi@yahoo.com> = wrote: >=20 > Bakul Shah <bakul_at_iitbombay.org> wrote on > Date: Fri, 24 Jan 2025 00:15:04 UTC : >=20 >> [-9fans, +freebsd-current as 9fans adds a reply-to: 9fans line] >>=20 >>> On Jan 23, 2025, at 3:53=E2=80=AFPM, Warner Losh <imp@bsdimp.com> = wrote: >>>=20 >>> I fail to see how putting code in the kernel is better than just = using got for the few people that are alergic to git. Even if it is only = 1000 lines in plan 9, but likely more in FreeBSD and by the way not yet = ported to FreeBSD. We know got can't crash the system and is small = enough to not matter, even if it isn't in the base today. >>=20 >>=20 >> May I suggest: >> - always ship the *commit hash* for any release or snapshot with its = base.txz >=20 > For stable/* and main builds via PkgBase: >=20 > I'll note that, for PkgBase, the commit hashes for the "base" vs. the = "kernel" > need not be identical from what I've seen. In other words, the = separate > packages for /usr/src/sys/ vs. for the rest of /usr/src/ need not be > based on the exact-same commit hash. News to me. Since there is one repo for /usr/src and /usr/src/sys, this = would mess things up. Why have more or less two identical repos. In the quick = hack script below I assume one. This will need more work, this was just a PoC = to show what I mean. For an existing local repo the script can be enhanced = to fetch to a later commit hash (or one can just use git).=20 #!/bin/sh cmd=3D`basename $0` case .$2 in .) echo Usage: $cmd url commit-hash; exit 1;; esac if [ -e .git ]; then echo $cmd: .git already exists; exit 1; fi # check if there are any other files if [ ! -z "$(ls -A)" ] ; then echo $cmd: directory must be empty exit 1 fi git init git remote add origin $1 git fetch --depth=3D1 origin $2 || exit 1 git checkout FETCH_HEAD >=20 > Releases avoid that via the explicit control of when the releng/*.* = content is > updated: no update happens between and teh result happens to always = match > because of that (if I understand right). >=20 > This seems to be something new for any official FreeBSD builds of = stable/* and > main . >=20 >> - src.txz as now (or add commit hash) >=20 > See above if a stable/* or main context might involve PkgBase > build instead. >=20 >> - this is enough to download a repo (1-deep or whatever), bare if = src.txz was also unpacked. >> - add a simple script to download as above. >> - people can install whatever git client they want for further work. >>=20 >> git9 doesn't require any kernel code but on freebsd you'd have to >> use plan9port. It is far simpler but has a different interface. >=20 > =3D=3D=3D > Mark Millard > marklmi at yahoo.com >=20
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?29737771-BB47-4E1A-8085-A5F5BD0832C9>