From nobody Wed Jan 22 08:23:08 2025 X-Original-To: freebsd-current@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4YdHCY6XDYz5l7Zk for ; Wed, 22 Jan 2025 08:23:37 +0000 (UTC) (envelope-from dch@skunkwerks.at) Received: from fhigh-a4-smtp.messagingengine.com (fhigh-a4-smtp.messagingengine.com [103.168.172.155]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4YdHCY4fbVz4BLT for ; Wed, 22 Jan 2025 08:23:37 +0000 (UTC) (envelope-from dch@skunkwerks.at) Authentication-Results: mx1.freebsd.org; none Received: from phl-compute-02.internal (phl-compute-02.phl.internal [10.202.2.42]) by mailfhigh.phl.internal (Postfix) with ESMTP id 896541140121; Wed, 22 Jan 2025 03:23:30 -0500 (EST) Received: from phl-imap-02 ([10.202.2.81]) by phl-compute-02.internal (MEProxy); Wed, 22 Jan 2025 03:23:30 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=skunkwerks.at; h=cc:cc:content-transfer-encoding:content-type:content-type :date:date:from:from:in-reply-to:in-reply-to:message-id :mime-version:references:reply-to:subject:subject:to:to; s=fm1; t=1737534210; x=1737620610; bh=tQiTxRmpiDNYUPSBB/+aEeA0XCg/g+fy w4i8BTkQIew=; b=mbTN9MvQZiddaat/9ZGwGHT2xohipg94cG3IOgy2zncvANoQ FLJEKlWlDP2u1jSK8/xKJECqRAZYf90EeEd4TeCdxql+SrmftNoYsEDz7NmT6NCM aqoV6OX0RWHp4l0tkF3o6OOFT7qOfEc28bnL8adiivZWlmY5fMm22CGMsfU6ROTq 5RIQrmTAuOE55SR7/lX/iGsUDEKABsI9n2USyKTRJM5yfcQvq9mplMf8zWMQ1i8r UK5pxZ82ysJ6ZOgMBZnWEFW6+pP9mjObQt7gl/W9+uE1H1m3L8S9CI9qQVdC3fAV hKSG6P3uw3ODDYwUDm6yRlt4ebUEVE0UpMjL/w== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1737534210; x= 1737620610; bh=tQiTxRmpiDNYUPSBB/+aEeA0XCg/g+fyw4i8BTkQIew=; b=o HCSkr/8MDMGh1In+EhV4vAU6j1Pa2q4H6MTRymQ6NVKlrg6D4eH69bfEEmRf0ZAB 8Q2dAxk0/yXST8ILoRbotDSXwjeRrE8P8Pxe1v7/wHWkdbY83ghgypF+RidYIOO5 SeKYPea92yoFMfKw8SXtICEhO2jJGUFogCo/f4HLiM70ts8Y/kVUvezDzI+rRGvn J+rdXgOMYBGeOTZR6RHrEWGfyoaSv+1NNs2invXH2u06ScLbdf+4W6S/0IsoeF9G +1w86978u1pLd13AhYidR+DchpW+SOc/2q5b2kL5tsUdN4DzR0WPZfQJmhV9CbBH WV88QvOSbBofDod5b9j0w== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefuddrudejfedguddujecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggftfghnshhusghstghrihgsvgdp uffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftddtnecunecujfgurhepofggff fhvfevkfgjfhfutgfgsehtjeertdertddtnecuhfhrohhmpedfffgrvhgvucevohhtthhl vghhuhgsvghrfdcuoegutghhsehskhhunhhkfigvrhhkshdrrghtqeenucggtffrrghtth gvrhhnpeefffffveduhedutdetueevkeeuleefgeekteevjedvgeeuheeufeelleduvefg vdenucffohhmrghinhepghhithdqshgtmhdrtghomhdpfhhrvggvsghsugdrohhrghenuc evlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpegutghhsehs khhunhhkfigvrhhkshdrrghtpdhnsggprhgtphhtthhopeegpdhmohguvgepshhmthhpoh huthdprhgtphhtthhopehimhhpsegsshguihhmphdrtghomhdprhgtphhtthhopehfrhgv vggsshguqdgtuhhrrhgvnhhtsehfrhgvvggsshgurdhorhhgpdhrtghpthhtohepfhhrvg gvsghsugdqtghurhhrvghnthdqfhhrvggvsghsugdqohhrghduuddusehkvghtrghsrdhs ihdrphhrihdrvggvpdhrtghpthhtohepfhgsshguseiffiifrdiivghfohigrdhnvght X-ME-Proxy: Feedback-ID: ic0e84090:Fastmail Received: by mailuser.phl.internal (Postfix, from userid 501) id ECFD9B00069; Wed, 22 Jan 2025 03:23:28 -0500 (EST) X-Mailer: MessagingEngine.com Webmail Interface List-Id: Discussions about the use of FreeBSD-current List-Archive: https://lists.freebsd.org/archives/freebsd-current List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-current@FreeBSD.org MIME-Version: 1.0 Date: Wed, 22 Jan 2025 08:23:08 +0000 From: "Dave Cottlehuber" To: "Warner Losh" , "bob prohaska" Cc: "Sulev-Madis Silber" , freebsd-current Message-Id: <3782b90b-850f-4435-8b6d-bdb83753daea@app.fastmail.com> In-Reply-To: References: Subject: Re: /usr/src and /usr/ports not git directories ? Content-Type: text/plain Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 4YdHCY4fbVz4BLT X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:209242, ipnet:103.168.172.0/24, country:US] On Tue, 21 Jan 2025, at 21:29, Warner Losh wrote: >> Do you mean have the "install src" checkbox invoke git clone? >> That seems like a better idea, at least to me. This wouldn't be ideal for small systems or any area with lousy internet. > I think we should replace the populate /usr/src from a tarball with.... > populate it > with a tarball that represents a 1-deep checkout tree at the rev we > built the release > from. This lets users have the source, has minimal overhead and also > lets users update > or turn the shallow checkout into a deep one, etc. A shallow checkout > is quite a bit > less than a full tree, though still more than just the raw files. I've > not done poking to > see size comparisons. Can we ship a working gitup config? I've not used this yet, but this would be a good option. Another option is to ship src.txz as we do today, but include a minimal git config, such that `git fetch origin releng/14.2` would work. I like this because we're not really reliant on a specific version of git packfiles, and it's still just src as usual. Another option, IIRC Kyle mentioned this last year, is to use `git bundle` https://git-scm.com/book/en/v2/Git-Tools-Bundling but I don't really know enough about that. Perhaps that would be a reasonable option to fetch over network, in the installer? For the former, this seems to be sufficient: ``` # /usr/src/ .git/ .git/branches/ .git/objects/ .git/refs/ .git/HEAD ref: refs/heads/releng/14.2 .git/description FreeBSD 14.2-RELEASE .git/config see below ``` ``` # .git/config [core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://git.freebsd.org/src.git pushurl = git@gitrepo.freebsd.org:src.git fetch = +refs/heads/releng/14.2:refs/remotes/origin/releng/14.2 [branch "releng/14.2"] remote = origin merge = refs/heads/releng/14.2 ``` this yields ~ 350MiB raw, as txz its still 325MiB. ``` $ git fetch --depth 1 --no-tags --jobs 32 --set-upstream origin releng/14.2 remote: Enumerating objects: 103451, done. remote: Counting objects: 100% (103451/103451), done. remote: Compressing objects: 100% (89088/89088), done. remote: Total 103451 (delta 21659), reused 41475 (delta 10515), pack-reused 0 (from 0) Receiving objects: 100% (103451/103451), 344.67 MiB | 9.13 MiB/s, done. Resolving deltas: 100% (21659/21659), done. From https://git.freebsd.org/src * branch releng/14.2 -> FETCH_HEAD $ du -chs .git 348M .git 348M total ``` this isn't quite right, git switch / git reset --hard or similar might be needed, but its pretty close. A+ Dave