| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
| |
man pages are usually pretty small and therefore often also included in
out whereas doc seems to seldomly contain any man pages.
TODO: confirm this and get a better overview over man pages in doc
outputs
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
nix-instantiate unfortunately prints the plain .drv path for <attr>.out
wheras it prints <name>.drv!<output> for all non-default outputs. If we
realise the plain .drv path, _all_ outputs are realised which is not
desireable since we may not need extra store path being created by this,
e. g. for a derivation with outputs = [ "out" "lib" "dev" ] we only need
to realise "out" if the man pages are located in there, saving a bit of
time and disk space.
We implement this better behavior by adding the render function to
DrvWithOutput which converts a DrvWithOutput (at the cost of copying) to
an OsString. If the output is out, "!out" is appended to the path
meaning nix-store will only realise the default output.
|
| |
|
|
|
|
|
|
| |
* make exit code determination nicer syntactically by using an impl
* add .msg() function which returns an appropriate error message for
every error type.
|
|
|
|
|
|
|
|
|
|
| |
Unfortunately, nix-instantiate prints only the drv path for the `out`
output which causes nix-store to realise all drv outputs. This of course
breaks build_man_page since it expects the output to be just one path.
We fix this (for now) by using split(). Ideally we would use
<drv_path>!out for realising the default output which only builds the
output we need. However this is a bit annoying to solve since it means
we have to allocate a bit of memory.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a complete and user interface compatible rewrite of nman.go in
Rust which aleviates a few flaws of the previous implementation:
* Garbage collector roots for both the derivation and the build outputs
are created in a temporary directory which is cleaned afterwards. This
prevents a race condition between nman and nix-store --gc and doesn't
pollute the user's working directory.
* Instead of building just one build output, nman now checks every
output for the requested man page which fixes nman for derivations
which have their man pages split between multiple outputs, e. g. man
and devman.
Future work:
* Improve error messages reported to the user
* Man page
* Implement man page search heuristics if no section is specified:
Instead of falling back to section 1, all sections should be checked
for the desired page (in an ascending order?)
|
|
|
|
| |
No more Brother crap.
|
|
|
|
| |
I don't know what I'm doing, but it's fun.
|
| |
|
| |
|
|
|
|
|
| |
So, turns out that enp6s0f3u1 sometimes also is initialised as
enp6s0f4u1. Why? WHyyyyyyyyy?????
|
|
|
|
|
| |
Reminder to myself to never check in TODO files since you always end up
forgetting to update them in the right commits.
|
| |
|
| |
|
|
|
|
| |
Dunno why I thought it was the former.
|
| |
|
|
|
|
|
|
| |
Another convenience feature you'd want virtually always want is to
automatically commit the changed release.nix which is added in this
commit.
|
|
|
|
|
| |
The T14s is an awesome machine, but unfortunately it needs an Ethernet
dongle.
|
|
|
|
|
| |
This is not really to inform anybody about anything, but mostly to get
rid of the warning generated by `nix-build -A manual release.nix`.
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This started with pull request #43, which was about disabling the
command-not-found handler. The follow-up pull request, which is what I'm
merging now, however re-uses the programs.sqlite that is shipped as part
of the official nixpkgs channels.
While ideally the programs.sqlite would be in par with the jobset input
for nixpkgsSrc on Hydra, it's not easily possible since we'd need extra
configuration on Hydra, which in turn would make it harder to reproduce
the configuration on other systems. There also is no "tarball" jobset
input, which would at least make it easier to do via declarative
jobsets.
So until we have a definitive solution to this, we currently use
fetchurl to get the programs.sqlite based on a fixed snapshots and in
addition to that, @sternenseeman also wrote a handy updater to make
updating a breeze.
While I didn't test this on one of my machines yet, I did however add a
Hydra jobset for the branch and it so far didn't introduce new eval
errors or build failures, so I consider this safe to merge.
Thanks to @sternenseeman for implementing both #43 and #49.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This script downloads the latest nixos-unstable nixexprs.tar.xz,
extracts programs.sqlite, figures out its hash and updates version and
hash in the given release.nix.
Accessible as pkgs.sternenseemann.vuizvui-update-programs-sqlite for a
lack of a better place to put it. Maybe we should add something?
build-support doesn't feel right.
Future work: run this automatically once in a while via GitHub actions.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Since we now distribute the programs.sqlite database with the vuizvui
channel, we can make use of it in programs.command-not-found. We change
the default path used to use the nixpkgs sub directory of the vuizvui
channel (by default it expects a channel named nixos containing the
database).
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
programs.command-not-found requires a database containing an index of
all of nixpkgs. Since this is pretty expensive to create we fetch the
database from the nixos-unstable channel. Unfortunately it is not
available via git, so we need to use the tarball which also means hydra
can't automatically update it.
One improvement to this change that would be possible is to also index
vuizvui and merge that with the database from upstream. This should
probably be investigated in the future, but probably affects less people
as the nix tool will only be usable with vuizvui packages as
commond-not-found suggests if vuizvui.modifyNixPath = true.
|
|
|
|
| |
gh pr checkout sure is extremely convenient.
|
|
|
|
|
|
|
|
|
| |
Apparently (probably since GNU came along) there are manuals for
different languages than english in share/man/$language. This adds
support for this in my mandoc module by allowing the user to freely
specify the manpath entries under $out.
> nmap(1) - Netzwerk-Analysewerkzeug und Sicherheits-/Portscanner
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GnuPG version 2.2.26 got a refactor of the option parser and now no
longer preserves options set via command line flags when sending the HUP
signal.
I think this is an upstream regression and ideally we should submit a
bug report and or patch upstream, so this should be treated as a
workaround since I currently have limited time and just wanted fix our
integration module.
Since the config file is actually reloaded on HUP, we're now simply
passing the same options via file rather than via arguments.
Signed-off-by: aszlig <aszlig@nix.build>
|
|
|
|
| |
This is pure screenshot-bliss.
|
|
|
|
|
| |
This means we don't need the -common machinery anymore and can remove
the -tests attribute altogether.
|
|
|
|
|
|
|
| |
testRustSimple builds and runs the tests of a buildRustCrate derivation
automatically using drvSeqL, returning its non-test variant.
Really looking forward to pkgs.tvl :)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The crate implements a safe wrapper around mkdtemp(3) and mkstemp(3)
which provide decent temporary file and directory creation. The key
feature we provide is that we wrap the resulting path in a TempFile /
TempDir struct. This allows us to implement the Drop trait such that the
temporary directory / file is automatically deleted when the value goes
out of scope in Rust which saves the programmer from cleaning up
temporary artifacts themselves.
The API is indeed very tiny currently, only implementing creation and
AsRef<Path> which should allow all necessary path / file manipulation.
|
|
|
|
|
|
| |
Small wrapper around duplicity to restore/create my backups with.
The legosi backup is created by `services.duplicity`, but can be
restored from the script via the read-only application key.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The general consensus seems to be to use
vuizvui.user.<username>.<category>.<module name>
instead of
vuizvui.<category>.<user name>.<module name>
Things done to test this change:
* Checked build of machines.profpatsch.legosi.build
* Checked evaluation of machines.profpatsch.shiki.build
|
|
|
|
|
| |
This should backup every service in `/var/lib` and anything I add in
the future that I might have missed.
|
|
|
|
|
|
|
|
|
|
| |
Previously I had actually rebuilt the system locally, but since I use
the deploy script, I don’t need to have a full up-to-date nixpkgs
checkout, and only copy over the system closure.
Thus, set the path to only contain nixpkgs, and only a link to the
latest github unstable tarball in case I really need it e.g. for a nix
shell.
|
| |
|
|
|
|
|
|
| |
Before we just set 50M on workstations, but let’s increase to 500M and
set it as default on every machine, so we don’t run out of space
because somebody DDoSes our server logs.
|
|
|
|
|
|
|
|
|
|
|
| |
So far I've almost exclusively used scrot for screenshots, but most of
the time I used an image manipulation program to pixelate stuff, add
descriptions or draw arrows.
Flameshot combines this in a single application, so I expect that from
now on I can spam-post screenshots in even a higher rate than before ;-)
Signed-off-by: aszlig <aszlig@nix.build>
|
|
|
|
| |
Less fancy, more useful.
|
|
|
|
|
|
| |
nixpkgs-unstable has advanced enough that the fetchcvs fix is now
available via that channel, so our hydra won't choke on this derivation
with the upstream fetchcvs.
|
|
|
|
|
|
|
| |
Due to a previous oversight hardware.opengl.enable = true; wasn't set
anymore (previously it was by programs.sway which has been replaced).
Thus sway couldn't load the necessary OpenGL driver's anymore after a
reboot.
|
|
|
|
|
|
| |
This reverts commit 5bd756eaf27882820cb59e0ecf9c305f08b3b3e3.
Committed more than I meant to.
|
|
|
|
|
|
|
|
|
|
| |
nixpkgs has removed flash support in chromium without replacement in
d55603f11d36ae38ca76dec8d95bc55d2115f104 following the removal in
upstream chromium M88, so I'm disabling it completely in
vuizvui.user.aszlig.profiles.managed to fix the evaluation of shiki
and brawndo.
cc @aszlig
|
|
|
|
|
|
| |
sway needs opengl driver's to be enabled and loadable in order to start.
I previously didn't notice this oversight as I still had them loaded and
did not reboot after the rebuild.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This module implements a drop-in replacement for documentation.man which
finally lets me get rid of pkgs.man-db. This is still to be considered
experimental as the required patch hasn't landed in upstream mandoc yet.
Should that happen, I'll try to contribute this module back to nixpkgs.
A more detailed description on the module and mandoc on NixOS can be
found at the top of modules/user/sternenseemann/documentation/mandoc.nix
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Build mandoc from cvs and apply a patch which adds an exception for
the checks does makewhatis(8): with this the realpaths of man pages to
be indexed may be symlinks referring to files outside of the root man
directory if they are located in /nix/store.
This allows indexing /run/current-system/sw/share/man using mandoc's
makewhatis(8).
Since fetchcvs is currently broken in nixos-unstable we vendor in the
fixed variant from nixpkgs master until the channel has advanced.
|
|
|
|
|
|
| |
Couldn't figure out how to pass a string from a command which contains
spaces from a variable to a command without the string getting split
into two arguments, so nested shell it is.
|
|
|
|
|
|
|
|
| |
Even if GIT_PAGER is set to less alone, git diff will pass extra options
to less, so we have to explicictly set the LESS="..." environment
variable to change this behavior. Specifically we don't want -F which
prevents less from entering alternate mode which enables alternate
scrolling in foot.
|