Compare commits

...

9 commits

Author SHA1 Message Date
Emmet c4ac8888d4 Added readme's and notes for nix-on-droid profile 2024-06-24 09:41:35 -05:00
Emmet d5297c68f9 Fixes for nix-on-droid profile 2024-06-24 09:38:05 -05:00
Emmet 8bd2e5942e Prevent non-root from creating new profiles 2024-06-23 20:26:40 -05:00
Emmet 5439286f0d Untested nix-on-droid config 2024-06-23 20:26:21 -05:00
Emmet 657762f491 Updated system 2024-06-23 20:24:22 -05:00
Emmet 84bf650683 Added nextcloud client 2024-06-23 20:24:14 -05:00
Emmet 7da69ae391 Cleaned up some wsl config 2024-06-23 20:24:04 -05:00
Emmet 7851e1bda2 Disabling prism-launcher firejail temporarily 2024-06-23 20:23:43 -05:00
Emmet 1126ea94ec Added more different colors to headings 2024-06-23 20:23:28 -05:00
13 changed files with 198 additions and 90 deletions

View file

@ -101,15 +101,15 @@
"base16-vim": {
"flake": false,
"locked": {
"lastModified": 1663659192,
"narHash": "sha256-uJvaYYDMXvoo0fhBZUhN8WBXeJ87SRgof6GEK2efFT0=",
"owner": "chriskempson",
"lastModified": 1716150083,
"narHash": "sha256-ZMhnNmw34ogE5rJZrjRv5MtG3WaqKd60ds2VXvT6hEc=",
"owner": "tinted-theming",
"repo": "base16-vim",
"rev": "3be3cd82cd31acfcab9a41bad853d9c68d30478d",
"rev": "6e955d704d046b0dc3e5c2d68a2a6eeffd2b5d3d",
"type": "github"
},
"original": {
"owner": "chriskempson",
"owner": "tinted-theming",
"repo": "base16-vim",
"type": "github"
}
@ -117,11 +117,11 @@
"blocklist-hosts": {
"flake": false,
"locked": {
"lastModified": 1717861551,
"narHash": "sha256-8wolGw60hKNa++YO57FXL8/g5U84VgINoQAZ3ppe0ME=",
"lastModified": 1719001847,
"narHash": "sha256-dt/UEjcTSxkmsC+zZvGS2+Y6c2CFjo6Hn3WAhokFAkk=",
"owner": "StevenBlack",
"repo": "hosts",
"rev": "846f528dfc591a647a36462ec1f8bf3453fa0c35",
"rev": "05a9ae6098bb2f09eb1d35cb440a086a9a85d39c",
"type": "github"
},
"original": {
@ -373,24 +373,6 @@
"type": "github"
}
},
"flake-utils_2": {
"inputs": {
"systems": "systems_3"
},
"locked": {
"lastModified": 1705309234,
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"format-all": {
"flake": false,
"locked": {
@ -449,11 +431,11 @@
]
},
"locked": {
"lastModified": 1714981474,
"narHash": "sha256-b3/U21CJjCjJKmA9WqUbZGZgCvospO3ArOUTgJugkOY=",
"lastModified": 1715930644,
"narHash": "sha256-W9pyM3/vePxrffHtzlJI6lDS3seANQ+Nqp+i58O46LI=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "6ebe7be2e67be7b9b54d61ce5704f6fb466c536f",
"rev": "e3ad5108f54177e6520535768ddbf1e6af54b59d",
"type": "github"
},
"original": {
@ -490,11 +472,11 @@
]
},
"locked": {
"lastModified": 1718141734,
"narHash": "sha256-cA+6l8ZCZ7MXGijVuY/1f55+wF/RT4PlTR9+g4bx86w=",
"lastModified": 1719037157,
"narHash": "sha256-aOKd8+mhBsLQChCu1mn/W5ww79ta5cXVE59aJFrifM8=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "892f76bd0aa09a0f7f73eb41834b8a904b6d0fad",
"rev": "cd886711998fe5d9ff7979fdd4b4cbd17b1f1511",
"type": "github"
},
"original": {
@ -785,11 +767,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1718160348,
"narHash": "sha256-9YrUjdztqi4Gz8n3mBuqvCkMo4ojrA6nASwyIKWMpus=",
"lastModified": 1719075281,
"narHash": "sha256-CyyxvOwFf12I91PBWz43iGT1kjsf5oi6ax7CrvaMyAo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "57d6973abba7ea108bac64ae7629e7431e0199b6",
"rev": "a71e967ef3694799d0c418c98332f7ff4cc5f6af",
"type": "github"
},
"original": {
@ -800,11 +782,11 @@
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1718060059,
"narHash": "sha256-9XKFni8VMXo81RTq9XygCyaO3I/7UKpwIlM/yn0MdcM=",
"lastModified": 1718811006,
"narHash": "sha256-0Y8IrGhRmBmT7HHXlxxepg2t8j1X90++qRN3lukGaIk=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "a3c8d64ba846725f040582b2d3b875466d2115bd",
"rev": "03d771e513ce90147b65fe922d87d3a0356fc125",
"type": "github"
},
"original": {
@ -815,11 +797,11 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1706487304,
"narHash": "sha256-LE8lVX28MV2jWJsidW13D2qrHU/RUUONendL2Q/WlJg=",
"lastModified": 1718428119,
"narHash": "sha256-WdWDpNaq6u1IPtxtYHHWpl5BmabtpmLnMAx0RdJ/vo8=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "90f456026d284c22b3e3497be980b2e47d0b28ac",
"rev": "e6cea36f83499eb4e9cd184c8a8e823296b50ad5",
"type": "github"
},
"original": {
@ -975,11 +957,11 @@
"org-sliced-images": {
"flake": false,
"locked": {
"lastModified": 1711408181,
"narHash": "sha256-ck3mGXtJJ0N8asGE4cRtWeJx5/iC+bTXw2cvZgePJqM=",
"lastModified": 1718918908,
"narHash": "sha256-Pcz+e26qVsZMNEBbzjdrOUUib9ozLG1gY6Ry/l8e+qM=",
"owner": "jcfk",
"repo": "org-sliced-images",
"rev": "bd1141d6df6edfd9749c0bbf3a72836148c0e39d",
"rev": "43d4f4147ed4cd670aab8a2d9fdfe3c0edd289c9",
"type": "github"
},
"original": {
@ -1148,15 +1130,14 @@
},
"rust-overlay": {
"inputs": {
"flake-utils": "flake-utils_2",
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1718158726,
"narHash": "sha256-nOt0XxRZ9ZwztX4OOKdS4YkPd3TVfz/PoaD8TiT7/vw=",
"lastModified": 1719109180,
"narHash": "sha256-96dwGCV2yQxDozDATqbsM3YU0ft3Isw3cwVDO/eNCv8=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "d4d933340cd3b35d3dc256d76abc3d510e21dfdc",
"rev": "5fc5f3a0d7eabf7db86851e6423f9d7fbceaf89d",
"type": "github"
},
"original": {
@ -1196,11 +1177,11 @@
"nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1718122552,
"narHash": "sha256-A+dBkSwp8ssHKV/WyXb9uqIYrHBqHvtSedU24Lq9lqw=",
"lastModified": 1719152448,
"narHash": "sha256-Acbi1Crd+UEbpPW8IR0ZGRKV+JCnMXDS2cglFQJvRPM=",
"owner": "danth",
"repo": "stylix",
"rev": "e59d2c1725b237c362e4a62f5722f5b268d566c7",
"rev": "0fc4e9f1449a9dce4be7a1ecedd97949da591181",
"type": "github"
},
"original": {
@ -1239,21 +1220,6 @@
"type": "github"
}
},
"systems_3": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"ts-fold": {
"flake": false,
"locked": {

View file

@ -152,6 +152,20 @@
};
};
};
nixOnDroidConfigurations = {
inherit pkgs;
default = inputs.nix-on-droid.lib.nixOnDroidConfiguration {
modules = [ ./profiles/nix-on-droid/configuration.nix ];
};
extraSpecialArgs = {
# pass config variables from above
inherit pkgs-stable;
inherit pkgs-emacs;
inherit systemSettings;
inherit userSettings;
inherit inputs;
};
};
packages = forAllSystems (system:
let pkgs = nixpkgsFor.${system};
@ -188,6 +202,12 @@
home-manager-stable.url = "github:nix-community/home-manager/release-23.11";
home-manager-stable.inputs.nixpkgs.follows = "nixpkgs-stable";
nix-on-droid = {
url = "github:nix-community/nix-on-droid/master";
inputs.nixpkgs.follows = "nixpkgs";
inputs.home-manager.follows = "home-manager-unstable";
};
hyprland = {
type = "git";
url = "https://github.com/hyprwm/Hyprland";

View file

@ -25,6 +25,7 @@ chown -R 0:0 system;
chown -R 0:0 patches;
chown 0:0 flake.lock;
chown 0:0 flake.nix
chown 0:0 profiles
chown 0:0 profiles/*/configuration.nix;
chown 0:0 harden.sh;
chown 0:0 soften.sh;

View file

@ -4,8 +4,12 @@ This directory contains various system profiles which can easily be set in [[../
Current profiles I have available are:
- [[./personal][Personal]] - What I would run on a personal laptop/desktop*
- [[./work][Work]] - What I would run on a work laptop/desktop (if they let me bring my own OS :P)
- [[./homelab][Homelab]] - What I would run on a server or homelab
- [[./wsl][WSL]] - What I would run underneath Windows Subystem for Linux
- [[./work][Work]] - What I would run on my work laptop/desktop*
- [[./homelab][Homelab]] - What I would run on a server or homelab*
- [[./worklab][Worklab]] - My homelab config with my work SSH keys preinstalled*
- [[./wsl][WSL]] - Windows Subsystem for Emacs (uses [[https://github.com/nix-community/NixOS-WSL][NixOS-WSL]])
- [[./nix-on-droid][Nix on Droid]] - So that I can run Emacs on my phone (uses [[https://github.com/nix-community/nix-on-droid][nix-on-droid]])
*My [[./personal][personal]] and [[./work][work]] profiles are actually functionally identical (the [[./work][work]] profile is actually imported into the [[./personal][personal]] profile)! The only difference between them is that my [[./personal][personal]] profile has a few extra things like gaming and social apps.
*My [[./homelab][homelab]] and [[./worklab][worklab]] profiles are similarly functionally identical (they both utilize the this [[./homelab/base.nix][base.nix]] file)! The only difference is that they have different preinstalled ssh keys.

View file

@ -0,0 +1,3 @@
#+title: I need Emacs on the go!
This is my =Nix on Droid= profile, which is a minimal installation I use on Android. This (obviously) requires [[https://github.com/nix-community/nix-on-droid][nix-on-droid]] to be installed. I essentially just use this for Emacs and some CLI apps.

View file

@ -0,0 +1,60 @@
{ config, lib, pkgs, pkgs-stable, pkgs-emacs, systemSettings, userSettings, inputs, ... }:
{
# Simply install just the packages
environment.packages = with pkgs; [
# User-facing stuff that you really really want to have
vim # or some other editor, e.g. nano or neovim
# Some common stuff that people expect to have
procps
killall
diffutils
findutils
utillinux
tzdata
hostname
man
gnugrep
gnupg
gnused
gnutar
bzip2
gzip
xz
zip
unzip
git
];
# Backup etc files instead of failing to activate generation if a file already exists in /etc
environment.etcBackupExtension = ".bak";
# Read the changelog before changing this value
system.stateVersion = "23.11";
# Set up nix for flakes
nix.extraOptions = ''
experimental-features = nix-command flakes
'';
# Set your time zone
#time.timeZone = "Europe/Berlin";
# Configure home-manager
home-manager = {
backupFileExtension = "hm-bak";
useGlobalPkgs = true;
config = ./home.nix;
extraSpecialArgs = {
# pass config variables from above
inherit pkgs-stable;
inherit pkgs-emacs;
inherit systemSettings;
inherit userSettings;
inherit inputs;
};
};
}

View file

@ -0,0 +1,51 @@
{ config, pkgs, userSettings, ... }:
{
programs.home-manager.enable = true;
imports = [
../../user/shell/sh.nix # My zsh and bash config
../../user/shell/cli-collection.nix # Useful CLI apps
../../user/app/doom-emacs/doom.nix # My doom emacs config
../../user/app/ranger/ranger.nix # My ranger file manager config
../../user/app/git/git.nix # My git config
../../user/style/stylix.nix # Styling and themes for my apps
];
home.stateVersion = "22.11"; # Please read the comment before changing.
home.packages = with pkgs; [
# Core
zsh
git
];
xdg.enable = true;
xdg.userDirs = {
enable = true;
createDirectories = true;
music = "${config.home.homeDirectory}/Media/Music";
videos = "${config.home.homeDirectory}/Media/Videos";
pictures = "${config.home.homeDirectory}/Media/Pictures";
templates = "${config.home.homeDirectory}/Templates";
download = "${config.home.homeDirectory}/Downloads";
documents = "${config.home.homeDirectory}/Documents";
desktop = null;
publicShare = null;
extraConfig = {
XDG_DOTFILES_DIR = "${config.home.homeDirectory}/.dotfiles";
XDG_ARCHIVE_DIR = "${config.home.homeDirectory}/Archive";
XDG_ORG_DIR = "${config.home.homeDirectory}/Org";
XDG_BOOK_DIR = "${config.home.homeDirectory}/Media/Books";
};
};
xdg.mime.enable = true;
xdg.mimeApps.enable = true;
home.sessionVariables = {
EDITOR = userSettings.editor;
};
news.display = "silent";
}

View file

@ -176,6 +176,7 @@
libffi zlib
nodePackages.ungit
ventoy
nextcloud-client
]) ++ ([ pkgs-kdenlive.kdenlive ]);
home.file.".local/share/pixmaps/nixos-snowflake-stylix.svg".source =

View file

@ -15,7 +15,6 @@
../../user/app/ranger/ranger.nix # My ranger file manager config
../../user/app/git/git.nix # My git config
../../user/style/stylix.nix # Styling and themes for my apps
../../user/lang/cc/cc.nix # C and C++ tools
];
home.stateVersion = "22.11"; # Please read the comment before changing.

View file

@ -1,4 +1,5 @@
{ pkgs, userSettings, ... }:
# TODO make this work on nix-on-droid!
let myScript = ''
if [ "$1" = "sync" ]; then
if [ "$#" = 1 ]; then

View file

@ -4,10 +4,10 @@
environment.systemPackages = with pkgs; [ firejail ];
programs.firejail.enable = true;
programs.firejail.wrappedBinaries = {
prismlauncher = {
executable = "${pkgs.prismlauncher}/bin/prismlauncher";
profile = ./firejail-profiles/prismlauncher.profile;
};
#prismlauncher = {
# executable = "${pkgs.prismlauncher}/bin/prismlauncher";
# profile = ./firejail-profiles/prismlauncher.profile;
#};
steam = {
executable = "${pkgs.steam}/bin/steam";
profile = "${pkgs.firejail}/etc/firejail/steam.profile";

View file

@ -247,15 +247,16 @@
;; Top-level headings should be bigger!
(custom-set-faces!
'(org-level-1 :inherit outline-1 :height 1.3)
'(org-level-2 :inherit outline-2 :height 1.25)
'(org-level-3 :inherit outline-3 :height 1.2)
'(org-level-4 :inherit outline-4 :height 1.1)
'(org-level-5 :inherit outline-5 :height 1.1)
'(org-level-6 :inherit outline-6 :height 1.05)
'(org-level-7 :inherit outline-7 :height 1.05)
`(outline-1 :height 1.3 :foreground ,(nth 1 (nth 14 doom-themes--colors)))
`(outline-2 :height 1.25 :foreground ,(nth 1 (nth 15 doom-themes--colors)))
`(outline-3 :height 1.2 :foreground ,(nth 1 (nth 19 doom-themes--colors)))
`(outline-4 :height 1.1 :foreground ,(nth 1 (nth 23 doom-themes--colors)))
`(outline-5 :height 1.1 :foreground ,(nth 1 (nth 24 doom-themes--colors)))
`(outline-6 :height 1.1 :foreground ,(nth 1 (nth 16 doom-themes--colors)))
`(outline-7 :height 1.05 :foreground ,(nth 1 (nth 18 doom-themes--colors)))
`(outline-8 :height 1.05 :foreground ,(nth 1 (nth 11 doom-themes--colors)))
'(variable-pitch :family "Intel One Mono")
)
)
(after! org (org-eldoc-load))

View file

@ -317,15 +317,16 @@ Doom Emacs is traditionally installed by cloning the repository ([[https://githu
;; Top-level headings should be bigger!
(custom-set-faces!
'(org-level-1 :inherit outline-1 :height 1.3)
'(org-level-2 :inherit outline-2 :height 1.25)
'(org-level-3 :inherit outline-3 :height 1.2)
'(org-level-4 :inherit outline-4 :height 1.1)
'(org-level-5 :inherit outline-5 :height 1.1)
'(org-level-6 :inherit outline-6 :height 1.05)
'(org-level-7 :inherit outline-7 :height 1.05)
`(outline-1 :height 1.3 :foreground ,(nth 1 (nth 14 doom-themes--colors)))
`(outline-2 :height 1.25 :foreground ,(nth 1 (nth 15 doom-themes--colors)))
`(outline-3 :height 1.2 :foreground ,(nth 1 (nth 19 doom-themes--colors)))
`(outline-4 :height 1.1 :foreground ,(nth 1 (nth 23 doom-themes--colors)))
`(outline-5 :height 1.1 :foreground ,(nth 1 (nth 24 doom-themes--colors)))
`(outline-6 :height 1.1 :foreground ,(nth 1 (nth 16 doom-themes--colors)))
`(outline-7 :height 1.05 :foreground ,(nth 1 (nth 18 doom-themes--colors)))
`(outline-8 :height 1.05 :foreground ,(nth 1 (nth 11 doom-themes--colors)))
'(variable-pitch :family "Intel One Mono")
)
)
(after! org (org-eldoc-load))