Posted on September 12, 2023
git secret_cabal greet
After watching
My life in git, after subversion, after CVS. from DebConf, Iāve realized itās been a while since I talked about the way I keep everything
1 I do in git, and I donāt think Iāve ever done it online, so it looked like a good time for a blog post.
Beyond git itself (of course), I use a few git-related programs:
- myrepos (also known as
mr) to manage multiple git repositories with one command; - vcsh to make it easy to keep dot-files under git;
- git annex to store media files (anything that is big and will not change);
- etckeeper to keep an history of the
/etc directory; - gitolite and cgit to host my git repositories;
and some programs that donāt use git directly, but easily interact with it:
- ansible to keep track of the system configuration of all machines;
- lesana as a project tracker and journal and to inventory the things made of atoms that are hard 2 to store in git.
All of these programs are installed from Debian packages, on stable (plus rarely backports) or testing, depending on the machine.
Iām also grateful to the vcs-home people, who wrote most of the tools I use, and sometimes hang around their IRC channel.
And now, on to what Iām actually doing.
With the git repositories Iāve decided to err for too much granularity rather than too little3, so of course each project has its own repository, and so do different kinds of media files, dot-files that are related to different programs etc.
Most of the repositories are hosted on two gitolite servers: one runs on the home server, for stuff that should remain private, and the other one is on my VPS for things that are public (or may become public in the future), and also has a web interface with cgit. Of course things where Iām collaborating with other people are sometimes hosted elsewhere, mostly on salsa, sourcehut or on $DAYJOB related gitlab instances.
The .mr directory is where everything is managed: I donāt have a single .mrconfig file but a few different ones, that in turn load all files in a directory with the same name:
collections.mr for the media file annexes and inventories (split into different files, so that computers with little disk space can only get the inventories);private.mr for stuff that should only go on my own personal machine, not on shared ones;projects.mr for the actual projects, with different files for the kinds of projects (software, docs, packaging, crafts, etc.);setup.mr with all of the vcsh repositories, including the one that tracks the mr files (Iāll talk about the circular dependency later);work.mr for repositories that are related to $DAYJOB.
Then there are the files in the .mr/machines directory, each one of which has the list of repositories that should be on every specific machine, including a generic workstation, but also specific machines such as e.g. the media center which has a custom set of repositories.
The dot files from my home directory are kept in vcsh, so that itās easy to split them out into different repositories, and Iām mostly used the simplest configuration described in the 30 Second How-to in its homepage; vcsh gives some commands to work on all vcsh repositories at the same time, but most of the time I work on a single repository, and use mr to act on more than one repo.
The media collections are also pretty straightforward git-annex repositories, one for each kind of media (music, movies and other videos, e-books, pictures, etc.) and I donāt use any auto-syncing features but simply copy and move files around between clones with the git annex copy, git annex move and git annex get commands.
There isnāt much to say about the project repositories (plain git), and I think that the way I use my own program lesana for inventories and project tracking is worth an article of its own, here Iāll just say that the file format used has been designed (of course) to work nicely with git.
On every machine I install etckeeper so that there is a history of the changes in the /etc directory, but thatās only a local repository, not stored anywhere else, and is used mostly in case something breaks with an update or in similar situation. The authoritative source for the configuration of each machine is an ansible playbook (of course saved in git) which can be used to fully reconfigure the machine from a bare Debian installation.
When such a reconfiguration from scratch happens, it will be in two stages: first a run of ansible does the system-wide configuration (including installing packages, creating users etc.), and then I login on the machine and run mr to set up my own home. Of course there is a chicken-and-egg problem in that I need the mr configuration to know where to get the mr configuration, and that is solved by having setup two vcsh repositories from an old tarball export: the one with the ssh configuration to access the repositories and the one with the mr files.
So, after a machine has been configured with ansible what Iāll actually do is to login, use vcsh pull to update those two repositories and then run mr to checkout everything else.
And thatās it, if you have questions on something feel free to ask me on the fediverse or via email (contacts are in the about page)
Update (2023-09-12 17:00ish): The ~/.mr directory is not special for mr, itās just what I use and then I always run mr -c ~/.mr/some/suitable/file.mr, with the actual file being different whether Iām registering a new repo or checking out / updating them. I could include some appropriate ~/.mr/machines/some_machine.mr in ~/.mrconfig, but Iāve never bothered to do so, since it wouldnāt cover all usecases anyway. Thanks to the person on #vcs-home@OFTC who asked me the question :)
- At least, everything that I made that is made of bits, and a diary and/or inventory of the things made of atoms.ā©ļø
- until we get a working replicator, I guess :Dā©ļø
- in time Iāve consolidated a bit some of the repositories, e.g. merging the repositories for music from different sources (CD rips, legal downloads, etc.) into a single repository, but that only happened a few times, and usually Iām fine with the excess of granularity.ā©ļø
blog.trueelena.org/blog/2023/0ā¦
Staid Winnow
in reply to Ada Palmer • • •CynBlogger āš
in reply to Ada Palmer • • •Ingmar Lippert
in reply to Ada Palmer • • •Paul Cantrell
in reply to Ada Palmer • • •antipode77
in reply to Ada Palmer • • •AutisticMumTo3
in reply to Ada Palmer • • •Glyph
in reply to Ada Palmer • • •Tryst š“ó §ó ¢ó ·ó ¬ó ³ó æ š®šŖ
in reply to Ada Palmer • • •HauntedDoctor
in reply to Ada Palmer • • •guenther
in reply to Ada Palmer • • •I get the argument, but I wonder, isn't that kind of reductive? If we see social sciences and humanities primarily as a tool to manipulate large amounts of people (even when it's for a legitimate purpose), I fear we end up uncomfortably close to Stalin: en.m.wikipedia.org/wiki/Engineā¦
If we need to make such utilitarian arguments for these disciplines, I feel like the discussion is lost already, because apparently we can't just agree that research and art have an inherent value :(
term applied to writers and other cultural workers by Joseph Stalin
Contributors to Wikimedia projects (Wikimedia Foundation, Inc.)Michael Richardson
in reply to Ada Palmer • • •Ken Ryan
in reply to Ada Palmer • • •I read somewhere (here on Masto I think):
STEM without Humanities is how you get Spiderman villains.
Log šŖµ
in reply to Ada Palmer • • •The origin of the failure is embedded in the clique/caste system of public schools.
The nerd caste is afforded low social status. Political aptitude and money dictate success among same-age peers. This pattern continues into adulthood.
The problem is most obvious in the membership of legislatures--overwhelmingly lawyers, business managers, and professional politicians. Maybe 50 in the combined federal Congress have a STEM background.
Schmoozers don't want boffins to wield power.
Paul Wermer, CC BY-NC-SA 4.0
in reply to Ada Palmer • • •Felipe š¦š·
in reply to Ada Palmer • • •The thing is is that STEM fully financed by the gov? or are you putting the health of people in the hands of some random stakeholders that would kill for the line to go up
Dr.Implausible
in reply to Ada Palmer • • •#2RR - 2 Ruote di Resistenza
in reply to Ada Palmer • • •Fabien
in reply to Ada Palmer • • •Aurochs
in reply to Ada Palmer • • •Klaus Stein
in reply to Ada Palmer • • •I'd consider the trust and misinformation aspect partly psychology/mass psychology, partly sociology, fields that place themselves in social sciences (parts of psychology in natural sciences).
It does not feel wrong that humanities play their part here, but I cannot pinpoint it.
Andreas K
in reply to Ada Palmer • • •Problem here is that āfighting misinformationā has been an issue that our societies have been failing for years now, long before #COVID19
Decades.
#BrExit did not just happen 2015. It started with ābent bananasā in the 1990s. Yeah, very entertaining, sending misinformation under the guise from Brussels to the UK.
ā He was such an effective correspondent for us in Brussels that he greatly influenced British opinion on this countryās relations with Europeā
web.archive.org/web/2022033116ā¦
Battle of Hastings | The Spectator
web.archive.orgPaul H š“ó §ó ¢ó ·ó ¬ó ³ó æšŖšŗ
in reply to Ada Palmer • • •I'm a scientist and I totally agree.
Additionally, the arts make the life science and tech allow worth while
Andreas K
in reply to Ada Palmer • • •And the attack on sciences as such is generational actually.
Neoliberalism, that fig leaf for the rich oligarchs on top to get even richer, was āgentlyā forced onto academia and politics half a century ago.
Not sure if everyone realizes that privately funded research means ultimately privately directed research. Even if, the ādirectivesā don't have to be spelled out in writing in numerous instances.
Withdrawing some funds for a year sends a clear enough signal.
Andreas K
in reply to Ada Palmer • • •And when we are at it, the Bologna system in Europe is a bit devaluation of the university system too.
The old (bachelor free) system in Austria was arguably harder (because you did have to organize yourself), but it was, well, university, you had choice.
Today, a BSc might have 10 ECTS electives, and 12 ECTS specialisation. The rest is basically planned through for 3 years, including timetables???
Mi Go (teno)
in reply to Ada Palmer • • •Adam Jacobs šŗš¦
in reply to Ada Palmer • • •Absolutely.
See also climate change. The science has been clear for ages that we need to stop pumping CO2 into the atmosphere if we want to avoid catastrophic effects.
How to get people to actually do that is a social science problem.
In fact I suspect most of the great "scientific" challenges of our age are really social science problems.
CelloMom On Cars
in reply to Ada Palmer • • •Yeah.
When I hear "Listen to the scientists" my response is,
The climate science was the job of scientists.
Getting the word out is for jounarlists.
Devising solutions is for engineers, some scientists, and economists.
Getting consensus to move forward on the solution is for social scientists and for politicians.
And it takes all of us to push back on the fossil fueled climate denial machine.
Anthony Cowley
in reply to Ada Palmer • • •Tom Streeter
in reply to Ada Palmer • • •šøPookaš„Boošø
in reply to Ada Palmer • • •StevenSavage (he/him)
in reply to Ada Palmer • • •this.
I'm an IT project manager. I'm awash in technology.
80% of my job is people.
Ugh (āughā)
in reply to Ada Palmer • • •@samhainnight agree, but I donāt think stem folk are blameless here - there were oodles of scientists at fda, cdc who couldāve raised a stink at the gutting of their agenciesā missions for the urgency of normal.
But as far as I can tell, no walkouts, no massive protests, no burning the CDC director in effigy, nothing. Thatās a pretty catastrophic moral failure on STEMās part as well.
George Girton
in reply to Ada Palmer • • •Noah Cook
in reply to Ada Palmer • • •A scary aspect of your example is that medicine (at least in my experience) tends to do a better job of incorporating people from non-STEM backgrounds than many other fields.
For example, I have difficulty believing that many tech companies even have in-house policy analysts, given the frequent comedies they release when anyone mentions regulation. Comedy to me, at least, even if they're trying to be serious.
Kevin Russell
in reply to Ada Palmer • • •Merc
in reply to Ada Palmer • • •On the other hand, this could be flipped around as an argument against funding Humanities.
STEM experts produced a safe and effective vaccine in record time.
Humanities experts were unable to do the comparatively basic job of finding a way to convince people to take a vaccine that keeps them and their loved ones safe from an obvious and immediate threat. How can we expect them to do a much more difficult job, like say convince people to take climate change seriously.
This could lead people to ask: Where is the money best spent? STEM or "practical" Humanities?
I do think Humanities education is important, especially for kids. Teaching kids critical thinking / argument analysis might make them less susceptible to propaganda as adults. A class on the philosophy of science might help people who want to "do your own research".
mk30
in reply to Ada Palmer • • •@hpk are there people still out there saying stuff like this?
it seems to miss the point that not everyone is good at or likes STEM...
benitaplummer
in reply to Ada Palmer • • •Stargeezer Smith
in reply to Ada Palmer • • •Patryk Chojecki
in reply to Ada Palmer • • •This is what we need.
Lama Tin the Meaningless
in reply to Ada Palmer • • •I'm a STEM person. STEM's important, but holy damn humanities are for everyone.
I'd not even argue about including mathematics in the humanities. The study of math - really to study it - encompasses art, music, history, and philosophy. You cannot really understand math if you don't understand these things.
I was a musician before I was a mathematician. Music theory made me interested in math. If we don't have humanities, STEM is meaningless.
Asiny
in reply to Ada Palmer • • •Serge š»
in reply to Ada Palmer • • •Wolfgang Müller (DE:er/EN:he)
in reply to Ada Palmer • • •Raphael
in reply to Ada Palmer • • •One might argue that if all grokked STEM, the latter would not be a problem at all.
Also, not sure how social science helps with logistics.
Eskil Steenberg Hald
in reply to Ada Palmer • • •Preston MacDougall
in reply to Ada Palmer • • •#STEM on its own lacks the power of #STEAM šØ !
Thatās the impetus for the annual #Tennessee #STEAMFestival !
#STEM + #Arts = #STEAM
tnsteam.org/all-events
All Events ā Tennessee STEAM Festival
Tennessee STEAM FestivalSune Auken
in reply to Ada Palmer • • •seeker
in reply to Ada Palmer • • •it's also a problem at the intersection of politics and technology.
There is a large gap between the opinions expressed in this thread (moderate and Bernie left) and what we see in the Pew/Gallup surveys or presidential elections.
Nils Skirnir
in reply to Ada Palmer • • •Virtually all these people were humanities majors and most have become powerful and wealthy.
Is slamming humanities really just another attempt to limit the number of people who achieve power and wealth?
People who are STEM majors often achieve Upper Middle Class levels, but few become wealthy or powerful. In fact, I know several engineers who bemoaned the time they spent in engineering and some switched to real estate or law to make the real money.
NB: I am a STEM graduate, phd, and technical person who loves the humanities.
šØš¦ Josh Kellendonk
in reply to Ada Palmer • • •Fluffy Kitty Cat
in reply to Ada Palmer • • •SteveBologna
in reply to Ada Palmer • • •Jeffy š³ļøāā§ļøš³ļøāššŗš¦ ā¤ļøš±šŗ
in reply to Ada Palmer • • •Chris Moorehead šØš¦šŗš¦š¬š±
in reply to Ada Palmer • • •mirek kratochvil
in reply to Ada Palmer • • •indigomirage
in reply to Ada Palmer • • •