Commit graph

430 commits

Author SHA1 Message Date
fc37dfaa65 Cachix: Whitespace changes 2022-04-16 20:21:02 +05:30
ce5b5ada3a Fish: Add couple of aliases for nix-env system rollback/switch-generation
NOT tested
2022-04-16 20:20:30 +05:30
026b412e23 Fish: Add couple of aliases to interact with bebop remotely 2022-04-16 20:20:08 +05:30
3061442291 Build and deploy nixos from Enterprise to Bebop
- Generate binary cache signing keys on Enterprise
- Add private key to enterprise config for signing
- Add public key to Bebop for accepting packages signed by Enterprise
- Setup hosts files on both systems to include other host name at local reserved
  ip address
- Bebop: Enable OpenSSH access for root user
  - Via SSH only, NO password
  - Use same ssh public key as normal user
- Enterprise: Enable Qemu for compiling aarch64 pacakges

Deploy NixOS from enterprise to bebop with below:

```
nixos-rebuild boot --flake .#bebop -v --target-host root@bebop --build-host
localhost
```

Notice lack of sudo. Remote server does not ask for password for root (usually),
because it is supposed to use SSH key.

TODO: Add payas as trusted user in nix config for bebop so deploying via root is
not necessary. It is generally not best idea to expose root over network.
2022-04-16 20:12:15 +05:30
257d74eec6 Enterprise: Disable nvidia 2022-04-16 05:52:04 +05:30
6fa9d27889 Bebop: attempt to add ssh key too ssh-agent on every shell init 2022-04-16 05:50:18 +05:30
6bce1dce30 Enterprise: Use iwd instead of default wpa_supplicant for wifi management
iwd is supposed to be lightweight and only depend on kernel+glibc

It sounds nice, and so far it is working well enough. with one caveat:
   it cannot connect to Hidden networks.

Even with enabling the setting to connect to Hidden networks, which should have
worked, it just craps out on connecting my Hidden wifi.

For now, I'm inclied to try this thing out, so I just let my network brodcast
its SSID. We'll see how the experiment goes.
2022-04-15 22:48:25 +05:30
ce5d566329 Enterprise: Add hosts file entry for bebop with its fixed local IP 2022-04-15 22:05:48 +05:30
a40341725f Enterprise: Disable some big development packages that I am not using 2022-04-15 22:05:06 +05:30
7897d194e4 Bebop: attempt #2 to fix ssh-add 2022-04-15 13:32:31 +05:30
4d6490052c Bebop: Always start ssh-agent
For some reason, bebop requiers starting ssh-agent manually and add key after
every reboot. Apparently this is the fix to it.

It is expected to remember keys added once.
2022-04-15 12:35:33 +05:30
b577a0c90b Minor cleaup and comments 2022-04-15 12:28:30 +05:30
67ba724418 New module to hold config and packages common to all
While setting up Raspberry Pi, I realised there are some packages I consider
bare minimum, even for headless servers (that I own)

- NeoVim
- git
- ripgrep
- fd
- htop
- jq
- wget
- fzf
2022-04-15 12:25:40 +05:30
09240f7726 Enterprise: Disable nvidia GPU 2022-04-15 12:04:09 +05:30
3046d257ae Enterprise/Emacs: Add mu to emacspackages
supposedly allows using mu4e directly from stock emacs
2022-04-15 12:03:26 +05:30
626823c495 Bebop: Add Htop 2022-04-15 12:03:01 +05:30
c16c130e60 Bebop: Remove desktop environment
bebop is a raspberry Pi and intended to be a headless server for my home.

As such, it makes no sense for it to burn cycles or space for XServer or desktop environment.
2022-04-15 12:01:56 +05:30
33e1a05029 Bebop: Set user password outside NixOS config
I have not found a better way to make the user password setup declarative while
making it be included in config/store in encryoted format.

Perhaps agenix/sops-nix will be a fix, but I'll keep it for later
2022-04-15 11:58:53 +05:30
3e11013c7b Make Fish a common module instead of host specific module 2022-04-15 11:58:17 +05:30
bad999e00b bebop: Initial config
bebop is the Raspberry Pi hanging around my table utterly unused for close to a
year now. About time it saw some use as tiny home server.
2022-04-14 23:35:54 +05:30
970fd0a259 Minor comment and config cleanup 2022-04-11 14:06:10 +05:30
d05f277933 git: Change merge conflict style from diff3 to zdiff3 (zealous diff3) 2022-04-10 14:03:29 +05:30
4257e97752 Fonts: Remove FiraCode Nerd Font
I'm not using it, and builds 2 extra derivations during system rebuild.
2022-04-10 07:57:17 +05:30
52c34ef513 Disable nvidia 2022-04-10 07:21:03 +05:30
905a4cbad2 Minor readjustments and added comments 2022-04-10 00:08:39 +05:30
0446ce2d07 Move back to Emacs as standalone package instead of service
As before, modifying Emacs config has weird issues with doom+daemon.

Usually I have to restart emacs for any config changes to stick, and if there is
any issue or bug in my config, the daemon just craps out instead of giving any
good feedback. SO long, emacs the service, I'll probably never use you again.

Althoug I sure will miss lightning fast emacsclient opennigs
2022-04-10 00:06:29 +05:30
8ae17f5bad Clean up, rearrange and add comments in flake.nix
I could in theory just import all flake files from particular host, but so far
there aren't a lot of files in there, and I like the explicitness, and central
point of entry in flake.nix

Not sure what went wrong the last time I tried it. This seems to be working, so
I'll keep it and keep an eye for a while
2022-04-05 18:55:28 +05:30
18f39108dd flake.lock: 2022_04_05 2022-04-05 18:36:08 +05:30
4cb9f672d7 flake.lock: 2022_04_01 2022-04-02 20:59:39 +05:30
3257c99cc7 Nvidia: Enable nvidia GPU for Borderlands 2! 2022-04-02 20:59:20 +05:30
3d82146551 Fix for Borderlands 2: Add samba to steam-run packages
https://github.com/NixOS/nixpkgs/issues/126801
2022-04-02 11:05:16 +05:30
84d521358b Emacs: remove vterm 2022-04-01 23:56:37 +05:30
057a362336 Emacs: Remove vterm 2022-04-01 23:52:19 +05:30
de5b57bde6 flake.lock: 2022_03_31 2022-03-31 18:45:33 +05:30
0c0ee25679 Neovim: Enable orgmode plugin 2022-03-31 18:45:16 +05:30
bc30073596 Nvidia: Enable nVidia VAAPI drivers
These are experimental atm, but intel ones are also there and guaranteed to
work, so might not be an issue
2022-03-31 18:44:43 +05:30
bf1849416a Git: Set diff3 as default conflictstyle
Not that I ever interact with bare git conflicts, I always have magit or IDEA
gloves on while doing so, it is nonetheless a good habig to have this in the
config quiver.
2022-03-31 18:42:44 +05:30
21cff0f37a Git: Add new aliases and fish abbreviations for those aliases 2022-03-31 18:40:45 +05:30
51a851767f EXPERIMENT: Set up nixpkgs-unfree as root input as well as cachix
nixpkgs-unfree supposedly provides builds for non-free, but redistributable
packages that cache.nixos.org does not build.

Along with cuda-maintainers, it should reduce the burden for using heavy
packages for machine learning quite a bit. So, lets see how this one goes.

I should also start checking how the machine learning story is with NixOS at
all, it is rife with Python and Python has absolutely horrible ecosystem for
managing dependencies.
2022-03-29 22:11:51 +05:30
2747831355 Emacs: Switch to Emacs daemon (trying it out) 2022-03-29 10:01:50 +05:30
e3e0bd1732 flake.lock: 2022_03_28 2022-03-29 10:01:29 +05:30
bf2761e10c doom-emacs: Disable building doom-emacs config via Nix 2022-03-28 22:18:22 +05:30
9167849010 doom-emacs: Get nix-doom-emacs to build and work
It is not perfect, it does not load private files and it generally feels a set
and forget, not-updated-often situation like every other Nix derivation.

It is promising, but the edges are sharp, and not something I'd like to invest
time in right now.
2022-03-28 22:14:28 +05:30
5ac3d59a14 Nvidia: Disable separate GPU 2022-03-28 21:06:06 +05:30
0553add7fc doom-emacs: Initial commit (BROKEN)
Build Doom-emacs config via Nix itself, and comine all in single monolithic,
declarative system mwahahahahaha

Except, its not working yet. It keeps complaining about missing 'beancount' :/

So, this commit will most likely be promptly reverted.
2022-03-28 21:04:24 +05:30
4552eabb97 Revert "GnuPG: Initial commit"
This reverts commit 8755977e4f.
2022-03-28 14:47:02 +05:30
8755977e4f GnuPG: Initial commit
Setup GnuPG for (eventual) encryption in org-mode
2022-03-28 14:46:25 +05:30
40d3b9275b flake.lock: 2022_03_28 2022-03-28 11:58:13 +05:30
c2a3ac336d Fish: Enabe config and completions provided by other packages 2022-03-28 11:57:50 +05:30
e947d44f0c Add TexLive
While I do not intend to use it directly for compiling my documents anymore,
org-mode uses texlive to compile latex inline
2022-03-28 11:57:07 +05:30