about summary refs log tree commit diff
Commit message (Collapse)AuthorAgeFilesLines
* Revert "aszlig/gopass: Downgrade to version 1.9.2"aszlig2021-01-272-45/+12
| | | | | | | | | | | | | | | | | | | | | | | This reverts commit 7b8164be35c9d82d6e7389a407150a9128f7fb0c. From the upstream changelog: > This is an important bugfix release that should resolve several > outstanding issues and concerns. Since 1.10.0 was released was engaged > in a lot of discussions and realized that compatibility is more > important than we first thought. So we're rolling back some breaking > changes and revise some parts of our roadmap. We will strive to remain > compatible with other password store implementations - but remember > this is a goal, not a promise. This means we'll continue using > compatible secrets formats as well as GPG and Git. As mentioned in the original commit, I'm still not entirely convinced that my use case has a future with gopass, their decision to roll back some of the breaking changes at least makes it possible for me to upgrade to the latest upstream version without the fear of being locked in into some gopass-specific format. Signed-off-by: aszlig <aszlig@nix.build>
* profiles/services: Rework picomdevhell2021-01-101-0/+5
| | | | | I've been experiencing some nasty tearing and flickering lately. This was a good opportunity to also change some settings.
* profiles/{packages,services}: polybar -> i3status-rustdevhell2021-01-102-1/+1
| | | | | | I'm a bit tired of polybar and am very interested in i3status-rust, however, the latter isn't a perfect replacement yet, so I'm going to continue experimenting with it.
* profiles/packages: Clear some unneeded packagesdevhell2021-01-071-5/+0
| | | | These are not needed nearly as much as they once did.
* dnyarri: Fix unit names for btrfs scrub servicesaszlig2021-01-041-1/+1
| | | | | | | | | | | | | | | | | | Injecting pre/post start scripts into services called "btrfs-scrub-.service.service" isn't going to do a whole lot if the actual service name is called "btrfs-scrub-.service". During the last scrub I was wondering why caching got slow afterwards and found out that the caching devices were filled with lots of irrelevant data from the scrub. This led me to inspect what went wrong and when checking the properties of the scrub service unit, I found out that it never worked in the first place for the reason meantioned in the first paragraph. Actually using the right unit name helps a lot here, so onwards to the next scrub in February :-) Signed-off-by: aszlig <aszlig@nix.build>
* pkgs/profpatsch: add nix-evalProfpatsch2021-01-013-1/+11
| | | | Dumb wrapper around `nix-instantiate` for something I often need.
* machines/shiki: turn off screen after 5 seconds instead of 2Profpatsch2021-01-011-1/+3
|
* pkgs/profpatsch: add nix-runProfpatsch2021-01-014-0/+44
| | | | | | | | | Small tool which takes a block of nix options that should produce a script to run, and then calls the script with the rest of argv e nix-run { -A foobar } a b c calls `nix-build -A foobar && ./result a b c`.
* machines/profpatsch/base-server: convert module to toml definitionProfpatsch2020-12-304-22/+182
| | | | | | | | | | This is a working PoC of specifying module configs as toml configuration with simple to understand semantics. Both the option definitions and the actual config values can be specified via the toml DSL. This is extremely happy-path for now, so errors are gonna be horrible.
* games: Add Factorioaszlig2020-12-304-0/+695
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This has been laying around since a few weeks but instead of just using a simple shell script wrapper (which I had in the first place), I decided to directly patch the binary during rC3. The main reason why I went this route was because in the long run we want to have a generic implementation we can use to patch all sorts of games, similar to what we have with monogame-patcher. So the way the *current* patcher roughly works is by allocating an area called "compost", which is then used as some kind of abstraction for allocating code and data to be used for the references/logic that we need to patch. The latter involves patching XDG_DATA_HOME into the game and changing the "/usr/share/factorio" path to use the ones within the store path ($out/share/factorio). Fortunately, Factorio already assumes that everything within /usr/share/factorio (or our path for that matter) is read-only, so we don't need to add extra code/conditions specifically to handle that. Patching both cases is made possible by patching a third location (get_executable_name), which tries to get the current executable path via several methods (using /proc/self/exe, running "ps", ...) at runtime, which in our case is really unnecessary and a perfect opportunity to replace the function logic by the hardcoded path and using the rest of the function for our compost area. While patching might sound straigtforward, I actually introduced two little (but hard to debug) bugs, where I'm very grateful to all those folks (you know who you are) at rC3 who were actually following along and provided helpful input. In the long term, the goal is to rewrite the patcher with more elaborate type information (eg. right now function/opcode information is raw JSON) and generalise it enough that we can use it to get rid of a few other wrappers. Signed-off-by: aszlig <aszlig@nix.build>
* pkgs/profpatsch/e: translate [ and ] to block boundariesProfpatsch2020-12-281-9/+20
| | | | | | | | | | | | | Since the goal of using `e` with argv is interactive execution of block-style commands from the command line, the use of { and } for blocks is sub-optimal, since bash (and ostensibly also fish) interpret them as metacharacters and assign some semantics. [ and ] on the other hand are not taken (apart from the `[` executable, which is only relevant in command position and can always be replaced by the `test` command). So we translate a stand-alone "[" argument to "{" and the same for "]"/"}", giving us a transparent block syntax.
* pkgs/profpatsch/e: allow passing a block-style argument as argvProfpatsch2020-12-282-3/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | Often times I want to execute “block-style” programs directly, but it is rather inconvenient to type out `execlineb -c "…"` every time, plus -c wants the argv as a single string instead of an argv. The alternative, using the block representation with leading spaces, is even less ergonomic. So instead of execlineb -c "nix-run { -A pkgs.profpatsch.e ~/vuizvui } echo hello" or even nix-run ' -A' ' pkgs.profpatsch.e' ' /home/me/vuizvui' '' echo hello I can now write e nix-run { -A pkgs.profpatsch.e ~/vuizvui } echo hello and it will work as expected (provided your shell expands inside {} blocks, which bash does but fish doesn’t for some reason). If no argument is passed, e falls back to opening a shell prompt.
* modules/aszlig: Remove Taskwarrior moduleaszlig2020-12-234-86/+0
| | | | | | | | I no longer use Taskwarrior and since my config.patch fails to apply in the most recent release, I think it's time to finally remove it from my workstation profile. Signed-off-by: aszlig <aszlig@nix.build>
* pkgs/psi: Keep urgency hint indefinitelyaszlig2020-12-202-0/+14
| | | | | | | | | | | | | | | | | | | | | | One thing that has annoyed me since quite a while but ultimately didn't fix yet, was that the urgency hint was only set for one millisecond. I don't know how this would look like in a desktop environment, but in my environment the corresponding workspace only flashes red and then turns back to blue (the default color) whenever I get a new message. Since I do not constantly switch to Psi to check whether there is something new, I sometimes responded very late to messages even though I didn't want to (eg. not actively working on something). Of course, I also don't want to be interrupted when I'm actually in zone, but luckily the way urgency hints are displayed in my environment is pretty unobtrusive and there is no flashing, blinking or even sounds. So the only difference is that I do not need to switch to Psi anymore, to check whether there are new messages. Signed-off-by: aszlig <aszlig@nix.build>
* games/gog: Add Graveyard Keeperaszlig2020-12-202-0/+14
| | | | | | | | | | | | | This has been mentioned on Discourse[1] and since I have that game in my GOG library, I just decided to package it. I only went to the main menu and didn't actually play it, since I'm somewhat time constrained at the moment. So this only is "for the sake of completeness" :-) [1]: https://discourse.nixos.org/t/nix-expression-for-downloaded-gog-game/10595/7 Signed-off-by: aszlig <aszlig@nix.build>
* pkgs/games/humblebundle/pico-8: 0.1.12.c → 0.2.1bsternenseemann2020-12-181-3/+3
|
* profiles/base: Add helper for showing last Nix logaszlig2020-12-103-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | This is a common pattern I encounter on a daily basis, which involves copy & pasting the store path of a failed build to "nix log". Now the same is just a matter of running "nlast" and we get rid of the useless copy & paste. The way we do this does have a small goof: Using mtime (or really any time, other than atime, which commonly is disabled) is not going to work if we *repeat* an older Nix build, since this will only change the log file but the prefix directory will be unchanged. Since addressing this goof would most likely result in iterating through *all* log files, I'm not doing it since I think it doesn't occur very often in practice. If I happen to be wrong on that, we could still go for the heavyweight solution. Also, I went for implementing this in Python instead of a shell script, because the latter would not only be less readable but also way slower since we need to either fork out for every stat command or use ls and head to figure out the newest file. Signed-off-by: aszlig <aszlig@nix.build>
* devhell/vim: Change vim from module to packagedevhell2020-12-046-3/+87
| | | | Recommended by aszlig to switch from module to package.
* pkgs/psi: Update to latest upstream masteraszlig2020-12-041-5/+20
| | | | | | | | | | | No particular reason, other than current Psi version "feeling" too old and I'm feeling somewhat adventurous. The usrsctp library is now needed for Jingle, so I added a small build of it directly from master as well. Who wants old release versions, right? Signed-off-by: aszlig <aszlig@nix.build>
* workstation/packages: Remove NixOpsaszlig2020-12-041-1/+0
| | | | | | | | | | | | | | | | Since the "cryptography" Python library is marked as insecure I'd have several options here: Add an excemption for the library, switch to NixOps 2.0 or entirely remove it. I chose to do the latter, since on all of my deployments I currently use a heavily patched NixOps version which is somewhat of a mix between 1.5 and 2.0 and the version used here in the workstation profile is unused since ages anyway. In case I really need to use nixops on any of my workstations again, I could still resort to "nix run". Signed-off-by: aszlig <aszlig@nix.build>
* programs/vim: Add syntax highlighting for GDScriptaszlig2020-12-041-0/+7
| | | | | | | | | Added this when contributing to a GDScript project and since I know a few persons who implement their games using Godot, I might need to write GDScript at some point in the future again, so the syntax highlighting plugin comes in handy. Signed-off-by: aszlig <aszlig@nix.build>
* profiles/packages: Remove vim_configurabledevhell2020-12-041-1/+0
| | | | | This led to an issue where `vim` and `vimdiff` were launched from two different derivations.
* profile/base: Remove more fontsdevhell2020-11-301-2/+0
| | | | Don't need these either really.
* profiles/base: Add Nerd Font, remove othersdevhell2020-11-301-12/+1
| | | | | Nerd Fonts looks interesting and should replace most of the ones I already use.
* programs/vim: Remove dracula, add vimtexdevhell2020-11-261-4/+9
| | | | | | | I just like `tender` colorscheme too much, and also `dracula` didn't work very well. Although most of my LaTeX work is done on Overleaf, sometimes I do need some good local LaTeX support in vim, so let's give `vimtex` a chance.
* profiles/base: Rework ZSH configurationdevhell2020-11-231-2/+36
| | | | | | | | | | I've been trying to get most of my environment directly configured via my NixOS configuration rather than rely on my dotfiles repository, if the program/configuration is well supported in NixOS. Just like Vim, here too I'm relying more on NixOS' ZSH options, which truly eliminates dependencies on external repositories or dotfile setups.
* pkgs/profpatsch.de: update cvProfpatsch2020-11-231-0/+0
| | | | | The tex sources are in a different place currently, planning to move them here once I’ve nixified them sometime in the future.
* profiles/packages: Add gh clidevhell2020-11-181-0/+1
| | | | Might be less annoying that having to do things via the browser.
* machines/gunnr: Enable CUPSdevhell2020-11-171-0/+7
| | | | | Who'd have thought. Work has finally embraced a way of printing no matter what OS one runs. What a time to be alive.
* profiles/packages: Remove termitedevhell2020-11-161-1/+0
| | | | I'm very happy with `alacritty`, so I'm dropping `termite`.
* profiles/packages: Add vividdevhell2020-11-141-0/+1
|
* programs/vim: Rework vimdevhell2020-11-121-14/+23
| | | | Now it's pretty much the way I want it.
* modules: Rename enableFontDir to fontDir.enableaszlig2020-11-101-1/+1
| | | | | | | | | The option has been renamed since a while[1] ago, so to get rid of annoying warnings, let's actually switch to the new option name. [1]: https://github.com/NixOS/nixpkgs/commit/c99bd9bedf7291390c28eddb31f Signed-off-by: aszlig <aszlig@nix.build>
* dnyarri: Set bcache mode to writethroughaszlig2020-11-101-1/+1
| | | | | | | | | | | | | | | | | | I already have this running in writethrough for long enough so that I'm pretty confident that a disaster like last time[1] should not happen anytime soon so that hereby I'm making this permanent in the machine configuration. The reason why I set this to writearound initially instead of writethrough, was that I just wanted to go with the most conservative option first. Of course, during scrub, we still disable all caching, so we should not generate too much wear on the SSD. [1]: 15008e69542774c441e388ad4c2e28a2d27f9ba0 Signed-off-by: aszlig <aszlig@nix.build>
* games/invisigun-heroes: Update to version 1.8.7aszlig2020-11-101-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Upstream changes: * New localization: Russian * GAME: Performance optimizations * GAME: Faster startup * GAME: Framerate locked at 60fps to prevent timing drifts * GAME: Vsync disabled and setting removed due to sync timing issues * UI: Adjusted some button target visuals for clarity * UI: Much improved UI performance in online lobbies * UI: Warning when time-based modes are almost over is more clear * JOURNEY: Aether's boss shows shields on all body segments instead of just the head * JOURNEY: Regen shield time on Carmen stage 6 increased from 0.5s to 0.75s * UI: Fixed letterboxing shadows in middle of screen * UI: Localization corrections * UI: Fixed some text labels' display in Japanese * UI: Fixed offset scrolling positions in options menus * UI: Possible fix for blank interface elements (sanity checks when data loading on startup) * INPUT: Fixed some instances where control would be lost * NET: Fix for some disconnection cases when returning to the lobby after a match * NET: Fixed degrading network performance as a match progresses * NET: Fixed online stuttering and hitches after the first round * NET: Fixed incorrect shot style being set on clients * NET: Fixed freezing that can occur in Zone Control and Carrier modes * NET: More accurate framerate-independent timers for online modes * GFX: Fixed Selene's jump shadow showing in the wrong location for 1 frame * GFX: Fixed Phoebe instantly showing at her teleport destination for 1 frame * IRIS: Fixed being able to dash over Djaan-Khe's traps * EPI: Fixed not triggering footstep effects if activating ability midway to the next tile * DJAAN-KHE: Fixed not triggering footstep effects if activating ability midway to the next tile The full upstream changelog can be found at: https://www.sombr.com/pub/SIG/changelog/ Signed-off-by: aszlig <aszlig@nix.build>
* games/stardew-valley: Update to version 1.4.5aszlig2020-11-101-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The list of changes is very huge, so here is a *very* small summary for the 1.4 upgrade: * There is a new end-game mystery * Add some more character events * Add Fish Ponds * Add a new farm map: Four Corners * Over 60 new items, some fun, some practical and some powerful * Add 24 new hairstyles, 181 new shirts, 35 new hats, 14 new pants and 2 new boots * Junimo Kart has been almost completely re-done * Sheds can be upgraded to double their interior size * Add 2 new monsters and 2 new alternative levels to the mines * Add a new type of upgrade at the Blacksmith’s * New emote menu for your farmer (default key is Y) * Lots of Quality of Life improvements * Your collections tab now keeps track of all the letters you’ve received * Add 14 new music tracks * Hundreds of bug fixes Here is the full version history with not only the 1.4 upgrade but also all the patches till now: https://stardewvalleywiki.com/Version_History Signed-off-by: aszlig <aszlig@nix.build>
* games/starbound: Update to version 1.4.4aszlig2020-11-102-19/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I already updated the game a while ago, but didn't commit it yet and since the update has been out since a year, I think it's time to actually update it here as well (shame on me). This essentially includes the "new" bounty hunter update from June 2019, which has a lot of changes. So instead of including the changelog here, I'm hereby referring to the upstream release announcement: https://playstarbound.com/starbound-1-4-bounty-hunter-update/ I also changed the -Werror flag in the preloader to -Wall, since the errors/warnings we're getting are false-positives: error: '__builtin_strncpy' specified bound depends on the length of the source argument [-Werror=stringop-overflow=] While a warning like this usually is a concern, it's not in our case, since the size of the destination *also* depends on the length of the source argument. Additionally, I changed the test to use the new networking.interfaces.*.ipv4.addresses option instead of the legacy one which has been deprecated for ages. Signed-off-by: aszlig <aszlig@nix.build>
* games/gog: Add "The Longing"aszlig2020-11-102-0/+14
| | | | | | | Another game that I already finished (in less than 400 days obviously) but haven't yet committed so far. Signed-off-by: aszlig <aszlig@nix.build>
* games/gog: Add Always Awakening/Legacyaszlig2020-11-103-0/+28
| | | | | | | I've already packaged both games a while ago and already finished them, so this is basically to get rid of a dirty Git working tree. Signed-off-by: aszlig <aszlig@nix.build>
* programs/vim: Remove sensible and enable settingsdevhell2020-11-091-17/+18
| | | | | The `sensible` plugin doesn't work for me. I think setting things manually is probably better for now.
* profiles/packages: Remove taskelldevhell2020-11-091-1/+0
| | | | It's marked as broken and I've been using `smos` more lately anyway.
* machines/hildr: Remove Nord theme from xrdbdevhell2020-11-081-48/+0
|
* programs/vim: Add sleuth plugindevhell2020-11-061-0/+1
| | | | Fully automatic indentation, why not.
* {machines,modules}: Enable Podman everywheredevhell2020-11-063-4/+3
| | | | | I'm finding myself use containers more and more these days, primarily for testing stuff, so it's useful to have the tools installed.
* machines/gunnr: Remove Nord theme from xrdbdevhell2020-11-061-48/+0
| | | | | | Trying to figure out a better, more consistent approach to theming my terminals and terminal programs, so let's start from scratch and remove as much as possible.
* machines/gunnr: Add amdvlk to opengldevhell2020-11-051-1/+1
| | | | Let's see if this does anything good.
* modules/vim: Add cursorlinedevhell2020-11-051-0/+1
|
* profiles/packages: Remove xscreensaverdevhell2020-11-051-1/+0
| | | | Forgot I had this still in here.
* machines/{hildr,gunnr}: Enable my Vim configdevhell2020-11-052-1/+2
| | | | | As I move from one machine to another I'll be removing SpaceVim and enabling my Vim.
* modules/programs: Fix Vimdevhell2020-11-051-55/+70
| | | | | | | This config works now. Huge thanks to aszlig for helping! This is only a bare-bones configurations. There are some parts of SpaceVim I really enjoy, so over time I'll try to get my Vim configuration to emulate those parts.