diff --git a/LICENSE b/LICENSE index 7af38d8..f5b250c 100644 --- a/LICENSE +++ b/LICENSE @@ -617,59 +617,3 @@ reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attac 100 35149 100 35149 0 0 145k 0 --:--:-- --:--:-- --:--:-- 145k -h the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -state the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . - -Also add information on how to contact you by electronic and paper mail. - - If the program does terminal interaction, make it output a short -notice like this when it starts in an interactive mode: - - Copyright (C) - This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, your program's commands -might be different; for a GUI interface, you would use an "about box". - - You should also get your employer (if you work as a programmer) or school, -if any, to sign a "copyright disclaimer" for the program, if necessary. -For more information on this, and how to apply and follow the GNU GPL, see -. - - The GNU General Public License does not permit incorporating your program -into proprietary programs. If your program is a subroutine library, you -may consider it more useful to permit linking proprietary applications with -the library. If this is what you want to do, use the GNU Lesser General -Public License instead of this License. But first, please read -. diff --git a/README.md b/README.md index 5fc4316..07a6835 100644 --- a/README.md +++ b/README.md @@ -1,26 +1,35 @@ randomuser's dotfiles ===================== -here's some dotfiles! +![an image of the desktop while editing this repo's flake.nix](./demo.png) -some features +features +-------- -- ``bspwm`` + ``sxhkd`` -- ``tmenu``: terminal based ``dmenu`` replacement -- uses ``pash``, the password manager -- no flakes (can't figure it out, lol) +- `bspwm` + `sxhkd` + `st` + `firefox` +- most everything on the desktop save for the browser, media viewers, and desktop background, is a terminal +- on the server, runs gitea + simple-nixos-mailserver +- built with NixOS flakes -some future things to work on are +installation +------------ -- remove ``polybar`` with a simpler, homegrown solution -- integrate a dynamic color switching mechanism - - make these more appealing, in general - - without compromising speed and system load -- compatibility with 'traditional' unix systems +`sudo nixos-rebuild --flake .#your-flake-name-here switch` -license. +if you're trying to install `virtbox`, then use the `--impure` flag: -- boring legal stuff for most items in this configuration are in the LICENSE file. - - under the GPLv3 - - everything under ``config/*``, ``builds/*``, and ``modules/*``, in addition to all files that are ``*.nix``. - - NOT in ``wallpapers/*``, those are unlicensed and their legal status is unknown +`sudo nixos-rebuild --flake .#virtbox switch --impure` + +for alternate installations on non-NixOS hosts, a Makefile will be made available + +things to do +------------ + +- integrate `disko` and `sops-nix` into the setup +- switch from gitea to cgit +- establish backup infrastructure for `netbox` + +license +------- + +all materials, except `./home/wallpapers/pape.jpg`, is licensed under the GPLv3. the licensing status of `pape.jpg` is unknown. diff --git a/builds/utils.nix b/builds/utils.nix index f57c35f..62dfb9e 100644 --- a/builds/utils.nix +++ b/builds/utils.nix @@ -9,6 +9,7 @@ , bash , feh , jq +, ffmpeg , fzy , figlet , curl @@ -23,7 +24,7 @@ stdenv.mkDerivation rec { src = ./utils; nativeBuildInputs = [ makeWrapper pkg-config libxcb ]; - buildInputs = [ libxcb bash feh xrandr jq curl fzy ytfzf ]; + buildInputs = [ libxcb bash feh xrandr jq curl fzy ytfzf ffmpeg ]; buildPhase = '' ls @@ -36,7 +37,7 @@ stdenv.mkDerivation rec { for i in $(ls $src/sh); do cp $src/sh/$i $out/bin ln -sf $out/bin/tmenu_run $out/bin/regenerate - wrapProgram $out/bin/$i --prefix PATH : ${lib.makeBinPath [ sxhkd bash feh xrandr jq figlet curl fzy ytfzf ]} + wrapProgram $out/bin/$i --prefix PATH : ${lib.makeBinPath [ sxhkd bash feh xrandr jq figlet curl fzy ytfzf ffmpeg ]} done cp c/status/main $out/bin/statusbar diff --git a/builds/utils/sh/capture b/builds/utils/sh/capture index b251669..e74e052 100755 --- a/builds/utils/sh/capture +++ b/builds/utils/sh/capture @@ -1,7 +1,7 @@ #!/bin/sh # get screen info and temporary file -tmp=$(mktemp) +tmp=$(mktemp -d) res=$(xrandr | grep ' connected' | awk -F' ' '{print $1 " " $4}' | @@ -11,7 +11,7 @@ res=$(xrandr | # still or motion medium=$(printf ".mp4\n.png\n" | fzy) -output="$tmp$medium" +output="$tmp/main$medium" # capture case "$medium" in diff --git a/demo.png b/demo.png new file mode 100644 index 0000000..6ee7e09 Binary files /dev/null and b/demo.png differ diff --git a/flake.lock b/flake.lock index d682452..eb830b4 100644 --- a/flake.lock +++ b/flake.lock @@ -209,12 +209,12 @@ }, "locked": { "lastModified": 1, - "narHash": "sha256-qcQP65622JfSlKPDPCuTCMbzCWOvKBOA3OOO426ce8I=", - "path": "/nix/store/sjdqmgspwa9pkfkric4bb97vhzzib4sz-source/builds", + "narHash": "sha256-wGl3ZnqjhpAEpTkzgjWxgsbmGX9c7TPCM4I0okuOYFE=", + "path": "/nix/store/z62lv62z8yn2vfgxk06aqdr7i6wmk2v0-source/builds", "type": "path" }, "original": { - "path": "/nix/store/sjdqmgspwa9pkfkric4bb97vhzzib4sz-source/builds", + "path": "/nix/store/z62lv62z8yn2vfgxk06aqdr7i6wmk2v0-source/builds", "type": "path" } }, diff --git a/flake.nix b/flake.nix index 1b47c80..06e0817 100644 --- a/flake.nix +++ b/flake.nix @@ -15,7 +15,9 @@ url = "./builds"; inputs.nixpkgs.follows = "nixpkgs"; }; - simple-nixos-mailserver.url = "gitlab:simple-nixos-mailserver/nixos-mailserver/nixos-23.11"; + simple-nixos-mailserver = { + url = "gitlab:simple-nixos-mailserver/nixos-mailserver/nixos-23.11"; + }; }; outputs = { self, nixpkgs, home-manager, firefox-addons, simple-nixos-mailserver, utilpkg, ... }@inputs: { @@ -25,10 +27,10 @@ specialArgs = { inherit inputs; }; modules = [ ./boxes/netbox - simple-nixos-mailserver.nixosModule - { - mailserver = { - enable = true; + simple-nixos-mailserver.nixosModule + { + mailserver = { + enable = true; fqdn = "mail.beepboop.systems"; domains = [ "beepboop.systems" ]; loginAccounts = { @@ -41,10 +43,10 @@ "postmaster@beepboop.systems" ]; }; - }; + }; certificateScheme = "acme-nginx"; - }; - } + }; + } ]; }; virtbox = nixpkgs.lib.nixosSystem {