12 Commits

Author SHA1 Message Date
af54219f5f Install element-desktop too
Some checks failed
Update Nix Flake / update-flake (push) Failing after 18s
2026-01-24 16:37:09 +01:00
b6f59055d8 Fix quickstart.nix 2026-01-24 16:36:04 +01:00
cb990c0cd4 Switch to element-desktop 2026-01-24 16:35:54 +01:00
c896e02bf1 Allow unfree packages with "run" and "shell" commands
Some checks failed
Update Nix Flake / update-flake (push) Failing after 16s
2026-01-22 06:56:06 +01:00
c1e031efa9 Fix "systems deprecated" warning
Some checks failed
Update Nix Flake / update-flake (push) Failing after 49s
2026-01-20 21:01:05 +01:00
19f213ca8c development: install opencode 2026-01-20 20:40:09 +01:00
a0ebb3f259 builder: add ollama and ui 2026-01-20 20:39:32 +01:00
3a994a3b8d Add more packages to quickstart configuration 2026-01-20 20:39:03 +01:00
3b4c0e4a63 Clean up configs 2026-01-20 20:38:53 +01:00
b15dd4ce86 move zoxide from yazi to fish config 2026-01-20 20:38:32 +01:00
db5514062c Update readme 2026-01-20 20:24:25 +01:00
7b500ee994 Make v3ms07 a generic quickstart configuration 2026-01-20 20:24:06 +01:00
15 changed files with 91 additions and 50 deletions

View File

@@ -1,7 +1,12 @@
#+title: My dotfiles
My dotfiles for which I am using =nix=.
The structure is managed by [[https://snowfall.org/guides/lib/quickstart/][Snowfall lib]]
* Quick start for home-manger only (no need to pull this repo)
- Install nix using the https://github.com/DeterminateSystems/nix-installer
- Then run
#+begin_src shell
nix run nixpkgs#home-manager -- switch --flake git+https://gitlab.julian-mutter.de/julian/dotfiles.git#julian@quickstart
#+end_src
- Done
* Machine selection
=home-manager= automatically searches for =user= or =user@hostname= config in the flake, so specify one of those or you will have to manually specify them:

View File

@@ -164,9 +164,9 @@
inherit inputs outputs;
};
};
"julian@v3ms07" = lib.homeManagerConfiguration {
"julian@quickstart" = lib.homeManagerConfiguration {
modules = [
./homes/julian/v3ms07
./homes/julian/quickstart.nix
./homes/julian/hm-standalone-config.nix
];
pkgs = pkgsFor.x86_64-linux;

View File

@@ -27,6 +27,11 @@ with lib; {
enableFishIntegration = true;
};
programs.zoxide = {
enable = true;
enableFishIntegration = true;
};
programs.fish = {
enable = true;
@@ -38,14 +43,14 @@ with lib; {
cd $argv
'';
run = ''
nix run nixpkgs#"$argv[1]" -- $argv[2..-1]
nix run --impure nixpkgs#"$argv[1]" -- $argv[2..-1]
'';
shell = ''
set args
for arg in $argv
set args $args nixpkgs#$arg
end
nix shell $args
nix shell --impure $args
'';
fish_user_key_bindings = ''
bind ctrl-space 'zi; commandline -f repaint'

View File

@@ -1,7 +1,6 @@
{
lib,
pkgs,
config,
...
}:
with lib; {

View File

@@ -281,6 +281,7 @@ in {
"workspace 1, class:firefox"
"workspace 8, class:Zotero"
"workspace 9, class:nheko"
"workspace 9, class:Element"
"workspace 9, class:discord"
"workspace 9, class:org.telegram.desktop"
"workspace 10, class:thunderbird"

View File

@@ -1,5 +1,4 @@
{
lib,
pkgs,
inputs,
...
@@ -91,7 +90,7 @@
# Code formatting
conform-nvim = {
enable = true;
settings.formatters_by_ft = with pkgs; {
settings.formatters_by_ft = {
lua = ["stylua"];
python = ["black"];
nix = ["nixfmt"];

View File

@@ -30,6 +30,7 @@
telegram-desktop # telegram
# schildichat-desktop # not updated regularly
nheko
element-desktop
evince # Simple pdf reader, good for focusing on document content
firefox
# geogebra

View File

@@ -1,4 +1,9 @@
{pkgs, ...}: {
programs.opencode = {
enable = true;
package = pkgs.unstable.opencode;
};
home.packages = with pkgs; [
watchexec # Run command when any file in current dir changes
android-tools # adb

View File

@@ -3,9 +3,6 @@
inputs,
...
}: {
programs.zoxide.enable = true;
programs.zoxide.enableFishIntegration = true;
home.packages = with pkgs; [
exiftool
unar # extract archives

View File

@@ -24,6 +24,11 @@
};
};
# To allow unfree with 'nix run'
xdg.configFile."nixpkgs/config.nix".text = ''
{ allowUnfree = true; }
'';
colorscheme.name = "catppuccin-mocha";
# systemd.user.startServices = "sd-switch"; # TODO: what is this

View File

@@ -0,0 +1,32 @@
# Quick configuration for setting up basic things on a standalone home-manager device
# If you want to adapt it to a specific device, copy this file with the correct hostname
{pkgs, ...}: {
imports = [
./global
./features/fish
./features/direnv
./features/neovim
./features/yazi
./features/emacs
./features/nix-helper
./features/tmux
];
is-nixos = false;
home.sessionPath = ["/snap/bin"];
# Essential packages
home.packages = with pkgs; [
bat
dust
fd
ripgrep
fzf
lazygit
mc
tree
wget
];
}

View File

@@ -1,16 +0,0 @@
{
imports = [
../global
../features/fish
../features/direnv
../features/neovim
../features/yazi
../features/emacs
../features/nix-helper
];
is-nixos = false;
home.sessionPath = ["/snap/bin"];
}

View File

@@ -101,10 +101,17 @@
};
# Ollama used by open-webui as llm backend
# services.ollama = {
# enable = true;
# # acceleration = "rocm";
# };
services.ollama = {
enable = true;
# acceleration = "rocm";
openFirewall = true;
};
services.nextjs-ollama-llm-ui = {
enable = true;
hostname = "192.168.3.118";
port = 3001;
};
# services.open-webui = {
# enable = true;
# port = 8080;
@@ -114,6 +121,7 @@
networking.firewall.allowedTCPPorts = [
80
3001 # ollama-ui
];
services.openssh = {

View File

@@ -2,19 +2,19 @@
# For every flake input, aliases 'pkgs.inputs.${flake}' to
# 'inputs.${flake}.packages.${pkgs.system}' or
# 'inputs.${flake}.legacyPackages.${pkgs.system}'
flake-inputs = final: _: {
inputs =
builtins.mapAttrs (
_: flake: let
legacyPackages = (flake.legacyPackages or {}).${final.system} or {};
packages = (flake.packages or {}).${final.system} or {};
in
if legacyPackages != {}
then legacyPackages
else packages
)
inputs;
};
# flake-inputs = final: _: {
# inputs =
# builtins.mapAttrs (
# _: flake: let
# legacyPackages = (flake.legacyPackages or {}).${final.system} or {};
# packages = (flake.packages or {}).${final.system} or {};
# in
# if legacyPackages != {}
# then legacyPackages
# else packages
# )
# inputs;
# };
input-flake-packages = final: prev: {
sheet-organizer = inputs.sheet-organizer.packages.${prev.system}.default; # TODO: change sheet-organizer package output
@@ -26,11 +26,11 @@
nixpkgs-stable-unstable = final: prev: {
unstable = import inputs.nixpkgs-unstable {
system = prev.system;
system = prev.stdenv.hostPlatform.system;
config.allowUnfree = true;
};
stable = import inputs.nixpkgs {
system = prev.system;
system = prev.stdenv.hostPlatform.system;
config.allowUnfree = true;
};
};

View File

@@ -1,6 +1,6 @@
{
writeShellApplication,
nheko,
element-desktop,
telegram-desktop,
thunderbird,
discord, # TODO: discord not available for aarch64, this leads to flake evaluation for this arch fail.
@@ -9,7 +9,7 @@ writeShellApplication {
name = "open-messaging";
runtimeInputs = [
nheko
element-desktop
telegram-desktop
thunderbird
discord
@@ -18,7 +18,7 @@ writeShellApplication {
text = ''
thunderbird &
sleep 0.1
nheko &
element-desktop &
sleep 0.1
Telegram &
sleep 0.1