summaryrefslogtreecommitdiff
path: root/Biz
AgeCommit message (Collapse)Author
2024-04-03Hardcode hooksPath in bildBen Sima
This seems to be needed for git test to work, specifically because in a new worktree, git is not configured, and direnv is not loaded to auto-configure these settings. At least that's as far as I can tell what's going on. In either case, best not to rely too much on git anyway.
2024-04-03Set CODEROOT dynamically in nix buildsBen Sima
This seems to be needed for git test to work, in particular the directory inside the nix sandbox is like '/build/<name-of-checkout-directory>' which, in the case of git test, is the name of the worktree that git-branchless uses to checkout the commit under test. This is something like 'test-worktree-2'. So, I can't hardcode anything there.
2024-04-03Don't exit CI script on failureBen Sima
The whole point is to catch errors and write the result to the git notes, if the process exits then we can't do that.
2024-04-03Enable CI for every commitBen Sima
Uses git test to run CI on every commit before push.
2024-04-03Update comment to CI scriptBen Sima
It got out of sync with the code even within commit 7597d51ed4c866f596fb690d4d53d70bc01181b4, I dunno how I let that happen.
2024-04-02Add llama-cpp from nixos-23.11Ben Sima
Removes my custom llama-cpp build and instead pulls in the upstream build from nixos-23.11.
2024-04-02Add nixos-23_{05,11} depsBen Sima
Using the same methodology as in d56f05863d789423ff785cec654155d8495373a9, where I add additional nixpkgs via an overlay, I added access to nixos-23.11. I also renamed the nixpkgs-stable dep to be more appropriate, given that it comes from the nixos-23.05 git branch. I'm nost totally sure about the naming of the attr in the overlay, maybe it should be 'stable-23_11'? But I feel like for discoverability purposes it should be the same as the name in deps, so I'll just stick with that.
2024-04-01Disable NetworkManager-wait-online.serviceBen Sima
This seems to be a bug in nixos, and disabling it is easy enough and doesn't seem to break anything. https://github.com/NixOS/nixpkgs/issues/180175
2024-04-01Make bild exception for git hooksBen Sima
Apparently git hooks don't get called if they have a file extention, so these weren't getting called at all since commit 904de577261e7024373e7a42fd763184764238f9. So this renames them back to the extension-less versions, and adds an exception in bild for files in the core.hooksPath directory. Unfortunately this means Lint.hs will silently ignore these files, but I guess that's okay for now.
2024-04-01Set border and window placement in ftags/hoog scriptsBen Sima
I just like these UI settings better is all.
2024-04-01Rename .bash files to .shBen Sima
I was already using .sh to refer to shell scripts. When I added .bash, I didn't realize that the linter was set to act on .sh files and not .bash files, so all of these bash scripts escaped the linter. This commit renames them to .sh, removes the .bash extension support from Biz.Namespace, and fixes all the reported shellcheck errors.
2024-04-01Add nixfmt to Lint.hsBen Sima
nixfmt is the soon-to-be official formatter for Nix code, as per the NixOS GitHub group. So I figure I should just adopt it without worrying too much about the specifics of the formatting. I just formatted everything in one go, hence the huge diff, oh well.
2024-04-01Update my IP addressBen Sima
I (finally) switched my ISP account from my parents into my name, and they had to restart my modem (ONT box?) to process this. So I got a new IP address.
2024-04-01Add --jobs and --cpus to bildBen Sima
By default, nix will use the maximum amount of cores available to the machine. On my machine it was maxxing out the CPUs and then actually running out of RAM when compiling JavaScriptCore and literally shutting down my machine. So, I need to be able to control the concurrency and parallelism. The default settings I chose should reserve 4 cores for the user. I also changed --json to --plan because -j makes more sense for --jobs, as its used this way in other tools like make and nix-build.
2024-03-28Add nixpkgs unstable as an overlayBen Sima
There are just too many packages that I need that are in nixpkgs unstable and aren't in the release branches. Using it as an overlay like this means I can just refer to the packages I want from unstable without pulling in all the changes.
2024-03-25Few tweaks to MynionBen Sima
These just helped me when I tried to use it again and it didn't work and I wasn't immediately sure why.
2024-03-25Add some video modules for OBSBen Sima
2024-01-10Enable eternal terminal on berylliumBen Sima
This should probably be enabled everywhere... oh well.
2024-01-06Switch to gnome in berylliumBen Sima
I couldn't get my monitor to work properly in xmonad, so decided to use gnome for a while because I'll be away and will be using it headless from my macbook anyway.
2023-11-13Update radicale and set recommended headersBen Sima
This was leftover from work on the previous commit. I don't think its actually needed to get my stuff working, but these headers are recommended in the docs and the latest version supposedly has some relevant bug fixes, so I decided to commit this. - https://github.com/Kozea/Radicale/issues/838 - https://github.com/Kozea/Radicale/issues/954 - https://github.com/Kozea/Radicale/issues/1247
2023-11-06Add public collection for radicaleBen Sima
This will allow me to create a public calendar to share with people instead of using my iCloud calendar.
2023-10-31Update nixpkgsBen Sima
I need this to get gradio, I think.
2023-10-30Disabled broken xmpp domainsBen Sima
These stopped working with the Lets Encrypt integration and I don't know why. Just got a 404 when trying to check the .well-known endpoint. Also I don't know how to debug this. So I guess just disable and try to fix later?
2023-10-27CI script improvementsBen Sima
Added BILD_ARGS and removed the unused 'while read' so you can just call it directly without having to supply arguments.
2023-10-27Use nvidia GPU for graphicsBen Sima
Even though I have 64 cpus, when I use them all for compilation, the UI still lags, so that's annoying. Until I start using this for inference full-time, offload the UI stuff to the GPU.
2023-10-27Configure clight on BerylliumBen Sima
Just for my daily usage.
2023-10-27Add my GPG-derived SSH keyBen Sima
I'd much rather use GPG for key infrastructure. I'm not ready yet to fully switch over all of these keys, but this works well so far in the gitolite-admin repo so I'll test it out for a while before removing the old keys.
2023-10-27Disallow search engines from indexing my codeBen Sima
I don't really want my code to be discoverable, I only want people looking at it if I have explicitly told them about it. I tested it like so: ϟ curl -v https://simatime.com/git/ 2>&1 | rg x-robots < x-robots-tag: noindex, follow
2023-10-27Allow all git config keys in gitoliteBen Sima
The gitolite documentation is a bit of a labyrinth, but this should allow me to set 'gitweb.description' and whatever other git-config settings in the gitolite.conf file directly. I'm also disabling gerrit, because I'm not using it and the service fails to startup for some reason. Some relevant gitolite docs: - https://gitolite.com/gitolite/gitweb-daemon.html#gitweb - https://gitolite.com/gitolite/conf.html - https://gitolite.com/gitolite/git-config
2023-10-27Rename BIZ_ROOT to CODEROOTBen Sima
BIZ_ROOT was too specific. CODEROOT allows for other (non-biz) projects to live in the root of the repo. I didn't want to call it GIT_ROOT because maybe someday I won't want to use git. But I'll never not use code.
2023-10-10Add git-branchlessBen Sima
After using this for a while, I've decided that git-branchless will be the default tool for doing trunk-based development in the omnirepo.
2023-10-10Add beryllium and connect via VPNBen Sima
I finally got everything setup for the new dev machine, but I ran into a networking problem: I can't tell my home router to expose the ssh port 22 to multiple hosts. I could have made beryllium use a different port, but instead I decided to use tailscale, and this seems to work well. I still don't have hostname routing working, but maybe that's a simple config in tailscale somewhere. Eventually I will get all intra-networking stuff to use a vpn, but for now just using it for beryllium is fine.
2023-10-10Environment fixes on berylliumBen Sima
Getting beryllium setup with the omnirepo showed that a few things needed fixed.
2023-10-10Allow for infinite timeout in bildBen Sima
Setting '--time 0' will disable the timeout mechanism altogether. This is necessary because the initial bootstrap build (without access to any cached dependencies) takes *hours* mostly because of cuda and opencv and things like that.
2023-10-10Don't swallow namespace-parsing errorsBen Sima
Previously, if there was a problem with the inputs and bild failed to determine the namespace, 'fromPath' would return 'Nothing' and then 'catMaybes' would drop the error-causing input altogether. In the one time that I had a bad input, this made debugging incredibly difficult. It's always a bad idea to swallow errors silently, so instead lets just kill the program if we have bad inputs.
2023-10-03Add rundeps feature to bildBen Sima
This allows me to specify runtime dependencies, not just system or language deps.
2023-10-03Rename BIZ_ROOT to CODEROOTBen Sima
BIZ_ROOT was too specific. CODEROOT allows for other (non-biz) projects to live in the root of the repo. I didn't want to call it GIT_ROOT because maybe someday I won't want to use git. But I'll never not use code.
2023-09-21Add a 10-minute timeout for all buildsBen Sima
A build should never take more than 10 minutes. If it does, then force the programmer to make stuff faster. This should be a forcing function to either delete unneeded code, or improve the build system.
2023-09-20Prototype MynionBen Sima
This implements a prototype Mynion, my chatbot which will eventually help me write code here. In fact he's already helping me, and works pretty well over xmpp. The prompt is currently not checked in because I'm experimenting with it a lot, and it should probably be a runtime parameter anyways. In the course of writing this I added some helper libraries to get me going, configured black (didn't even know that was possible), and added 'outlines' and its dependencies even though I didn't end up using it. I'll keep outlines around for now, but I'm not sure how useful it really is because afaict its just pre-defining some stop conditions. But it took a while to get it working so I'll just keep it in for now.
2023-09-19Parse and format deadnix json outputBen Sima
Deadnix was printing a bunch of unicode characters so it could draw lines to the source location of an error, and it would mess up my output. Anyway I didn't find that feature useful. Now I just get the json output and print the line number and error message for the lint failure. Also did some refactoring where I saw fit: added a log message so you know what linter is currently running, and cleaned up some syntax.
2023-09-19Fix checking of grep exitcodeBen Sima
This is one of those things that's hard to get right because it depends on the state of the git repo to exercise all code paths.
2023-09-19Lint faster by grouping files by extensionBen Sima
Previously I would lint every file individually, in serial. This took forever. Now I group the files by extension (by first getting the Namespace) and run each linter on all relevant files at once. This is so much faster its stupid. Also I added formatters back into the dev env because my editor needs them to autoformat.
2023-08-22Replace pylint with ruffBen Sima
Ruff is like a million times faster, and I mostly ignored pylint's suggestions anyway. I also took this opportunity to move lint tools into a runtime dependency on Lint.hs, which meant adding a wrapper to the Haskell builder, which was easy enough. This paves the way for proper rundeps in bild.
2023-08-22Add a commit-msg hook lint and various other cleanupsBen Sima
Turns out that gitlint by default enforces the exact commit-msg format that I like to use. I'm enabling this because even I write poor commit messages sometimes, and looking back on my commits from even a few days ago is sometimes not very helpful. I also made some minor comment and nix changes that I noticed while reviewing my work from the last few days.
2023-08-21Don't run ci on notes refsBen Sima
2023-08-21Only run pre-push if there hasn't been a successful runBen Sima
2023-08-21Refactor the build system for readabilityBen Sima
Lots of changes here but the code is much improved. The nix code is clearer and structured better. The Haskell code improved in response to the nix changes. I needed to use a qualified path instead of the abspath because the BIZ_ROOT changes based on whether bild runs in nix or runs in the user environment. Rather than passing every argument into Builder.nix, now I just pass the json from bild and deconstruct it in nix. This is obviously a much better design and it only came to be after sleeping on it the other night.
2023-08-17Delete BesselBen Sima
Bild does not link libraries, and idk if it ever will, so just delete this for now.
2023-08-17Reload dev environment after git checkoutBen Sima
2023-08-17Add --no-cabal flag to ormoluBen Sima