wayland + more per project dev

This commit is contained in:
Florian Schmitt 2023-08-13 19:18:11 +03:00
parent 6277991153
commit 1631a93094
12 changed files with 1074 additions and 324 deletions

View file

@ -6,7 +6,7 @@
{ config, pkgs, ... }:
{
hardware.bluetooth.enable = false;
hardware.bluetooth.enable = true;
# Additional configuration from github/jeremiehuchet/nixos-macbookpro
boot.kernelParams = [

View file

@ -27,6 +27,30 @@
fsType = "vfat";
};
fileSystems."/mnt/nas/music" =
{
device = "192.168.1.2:/volume1/music";
options = [ "nfsvers=4.2" "x-systemd.automount" "noauto" "rw" "relatime" "user" "acl" "defaults"];
fsType = "nfs";
};
services.rpcbind.enable = true; # needed for NFS
systemd.mounts = [{
type = "nfs";
mountConfig = {
Options = "defaults,acl,user,noauto,relatime,rw";
};
what = "192.168.1.2:/volume1/music";
where = "/mnt/nas/music";
}];
systemd.automounts = [{
wantedBy = [ "multi-user.target" ];
automountConfig = {
TimeoutIdleSec = "600";
};
where = "/mnt/nas/music";
}];
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking

View file

@ -20,13 +20,13 @@
shellAliases = {
ls = "ls --hyperlink=auto";
nixedit = "codium /etc/nixos";
nixupdate = "sudo nixos-rebuild switch";
nixupdate = "sudo nix-channel --update && sudo nixos-rebuild switch";
nixclean = "sudo nix-env --delete-generations old --profile /nix/var/nix/profiles/system && sudo /nix/var/nix/profiles/system/bin/switch-to-configuration switch && sudo nix-store --gc";
};
shellInit = "cd ~/Developpements;";
ohMyZsh = {
enable = true;
plugins = [ "git" ];
plugins = [ "git" "ssh-agent" ];
theme = "robbyrussell";
};
};
@ -44,6 +44,7 @@
emacs-nox
findutils
gnugrep
gnumake
gnupg
imagemagick
jq

View file

@ -32,7 +32,6 @@ in
#media-session.enable = true;
};
printing.enable = true; # Enable CUPS to print documents.
redshift.enable = false; # may be causing flickers
xserver = {
enable = true;
layout = "us";
@ -75,13 +74,13 @@ in
# Allow unfree packages
nixpkgs.config.allowUnfree = true;
nixpkgs.config = {
packageOverrides = pkgs: with pkgs; {
unstable = import unstableTarball {
config = config.nixpkgs.config;
};
};
};
# nixpkgs.config = {
# packageOverrides = pkgs: with pkgs; {
# unstable = import unstableTarball {
# config = config.nixpkgs.config;
# };
# };
# };
environment.plasma5.excludePackages = with pkgs.libsForQt5; [
baloo
@ -97,14 +96,23 @@ in
(vscode-with-extensions.override {
vscode = vscodium;
vscodeExtensions = with vscode-extensions; [
ms-ceintl.vscode-language-pack-fr
mkhl.direnv
jnoortheen.nix-ide
bmewburn.vscode-intelephense-client
dracula-theme.theme-dracula
gruntfuggly.todo-tree
eamodio.gitlens
jnoortheen.nix-ide
#junstyle.php-cs-fixer
mhutchie.git-graph
];
ms-ceintl.vscode-language-pack-fr
]
++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [
{
name = "twig-language-2";
publisher = "mblode";
version = "2.1.14";
sha256 = "113w2iis4zi4z3sqc3vd2apyrh52hbh2gvmxjr5yvjpmrsksclbd";
}
]
;
})
(chromium.override {
enableWideVine = true; # DRM support
@ -113,29 +121,32 @@ in
calibre
digikam
dracula-theme
palenight-theme
#palenight-theme
numix-cursor-theme
papirus-icon-theme
element-desktop
filezilla
gimp-with-plugins
hyprland
#hyprland
inkscape-with-extensions
joplin-desktop
#keychain
kitty
kitty-themes
latte-dock
libreoffice
libsForQt5.ark
libsForQt5.bismuth
mattermost-desktop
mixxx
nextcloud-client
obsidian
libreoffice
signal-desktop
tdesktop
unstable.thunderbird
tdesktop #telegram
thunderbird
transmission-qt
vlc
yt-dlp
];
# environment.gnome.excludePackages = (with pkgs; [

View file

@ -8,7 +8,7 @@
dejavu_fonts
inter
jetbrains-mono
(nerdfonts.override { fonts = [ "FiraCode" "FiraMono" ]; })
(nerdfonts.override { fonts = [ "FiraCode" "FiraMono" "Iosevka" ]; })
noto-fonts-cjk
noto-fonts-emoji
];
@ -18,7 +18,7 @@
subpixel.lcdfilter = "light";
defaultFonts = {
monospace = [ "JetBrains Mono" ];
monospace = [ "Iosevka" ];
};
};
};

File diff suppressed because it is too large Load diff

View file

@ -1,107 +1,6 @@
# Local developpement
{ pkgs, config, lib, ... }:
# let
# # # using pkgs2 to avoid recursive loop with fetchFromGitHub
# # # see https://stackoverflow.com/questions/73097604/nixos-how-to-import-some-configuration-from-gitlab-infinite-recursion-encounte
# # pkgs2 = (import <nixpkgs> { });
# # nix-phps = pkgs2.fetchFromGitHub {
# # owner = "fossar";
# # repo = "nix-phps";
# # rev = "ac2bb3d416a10fc66d0148dddc63a19c6c5a907c";
# # hash = "sha256-74kQIFf3Cu1aeOsohCiLuA1aXNGYt2U9tTUP0yvm4EA=";
# # };
# # phps = import nix-phps;
# # phpfpm pools with php version from nix-phps
# mkPhpFpm = phpXX:
# {
# name = phpXX;
# value = {
# user = config.services.caddy.user;
# group = config.services.caddy.group;
# phpPackage = phps.packages.${builtins.currentSystem}.${phpXX}.buildEnv {
# extensions = ({ enabled, all }: enabled ++ (with all; [
# xdebug
# ]));
# extraConfig = ''
# '';
# };
# settings = {
# "listen.owner" = config.services.caddy.user;
# "pm" = "dynamic";
# "pm.max_children" = 75;
# "pm.start_servers" = 10;
# "pm.min_spare_servers" = 5;
# "pm.max_spare_servers" = 20;
# "pm.max_requests" = 500;
# };
# phpOptions = ''
# display_errors = on
# error_reporting = E_ALL
# '';
# };
# };
# phpfpmPools = builtins.listToAttrs (builtins.map mkPhpFpm [ "php73" "php74" "php80" "php81" ]);
# # caddy virtual hosts
# mkDot = list: (builtins.concatStringsSep "." list);
# mkVhost = { phpXX, root, sub }: rec {
# name = (mkDot [ sub phpXX "localhost" ]);
# value = {
# extraConfig =
# ''
# root * /var/www/${root}
# file_server browse
# php_fastcgi unix/${config.services.phpfpm.pools.${phpXX}.socket}
# '';
# };
# };
# caddyLocalRootCert = builtins.readFile ./../_local/caddy.root.cert.pem;
# localDevConfig = builtins.fromJSON (builtins.readFile ./../_local/devconfig.json);
# caddyVhosts = builtins.listToAttrs (builtins.map mkVhost localDevConfig.hosts);
# # hosts.json example
# # {
# # "hosts":
# # [
# # { "sub": "project1", "phpXX": "php73", "root": "/project1/public" },
# # { "sub": "project2", "phpXX": "php81", "root": "/project2/www" }
# # ],
# # "databases": [ "db1", "db2"]
# # }
# in
{
# mailhog
services.mailhog = {
enable = true;
};
# databases
services.mysql = {
enable = true;
package = pkgs.mariadb;
ensureDatabases = ["yeswiki"];
initialScript = pkgs.writeText "mysql-init.sql" ''
CREATE USER 'root'@'localhost' IDENTIFIED BY 'secret';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost';
FLUSH PRIVILEGES;
'';
};
# services.postgresql = {
# enable = true;
# };
# # phpfpm
# services.phpfpm.pools = phpfpmPools;
# # caddy webserver
# networking.firewall.allowedTCPPorts = [ 80 443 ];
# services.caddy = {
# enable = true;
# virtualHosts = caddyVhosts;
# };
# # caddy localhost root certificate
# security.pki.certificates = [ caddyLocalRootCert ];
virtualisation = {
docker.enable = true;
docker.rootless = {
@ -115,12 +14,16 @@
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = with pkgs; [
(import (fetchTarball https://github.com/cachix/devenv/archive/v0.6.3.tar.gz)).default
(import (fetchTarball https://install.devenv.sh/latest)).default
direnv
docker-compose
nodejs
php
gcc
clang
zig
php82Packages.composer
php82Packages.php-cs-fixer
rpi-imager
symfony-cli
virt-manager

View file

@ -1,3 +0,0 @@
source_url "https://raw.githubusercontent.com/cachix/devenv/d1f7b48e35e6dee421cfd0f51481d17f77586997/direnvrc" "sha256-YBzqskFZxmNb3kYVoKD9ZixoPXJh1C9ZvTLGFRkauZ0="
use devenv

View file

@ -1,5 +0,0 @@
# Devenv
.devenv*
devenv.local.nix

View file

@ -1,138 +0,0 @@
{
"nodes": {
"devenv": {
"locked": {
"dir": "src/modules",
"lastModified": 1680782537,
"narHash": "sha256-oQQoEzpuo4fjyPNCu3/Tc+f8hPAvvuoy4bIo9hn7akg=",
"owner": "cachix",
"repo": "devenv",
"rev": "e639583e5974e1d0f58ac110356f7f182d6f6004",
"type": "github"
},
"original": {
"dir": "src/modules",
"owner": "cachix",
"repo": "devenv",
"type": "github"
}
},
"flake-compat": {
"flake": false,
"locked": {
"lastModified": 1673956053,
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-utils": {
"locked": {
"lastModified": 1667395993,
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"gitignore": {
"inputs": {
"nixpkgs": [
"pre-commit-hooks",
"nixpkgs"
]
},
"locked": {
"lastModified": 1660459072,
"narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=",
"owner": "hercules-ci",
"repo": "gitignore.nix",
"rev": "a20de23b925fd8264fd7fad6454652e142fd7f73",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "gitignore.nix",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1680881774,
"narHash": "sha256-Ou4+/oVbEWr+Lnnsc7yr21bdTTJFql9GvFzhPr7/Tew=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "d218e35480c7ea6cbb50ea68e6b1d88f5d2dc451",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1678872516,
"narHash": "sha256-/E1YwtMtFAu2KUQKV/1+KFuReYPANM2Rzehk84VxVoc=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "9b8e5abb18324c7fe9f07cb100c3cd4a29cda8b8",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-22.11",
"repo": "nixpkgs",
"type": "github"
}
},
"pre-commit-hooks": {
"inputs": {
"flake-compat": "flake-compat",
"flake-utils": "flake-utils",
"gitignore": "gitignore",
"nixpkgs": [
"nixpkgs"
],
"nixpkgs-stable": "nixpkgs-stable"
},
"locked": {
"lastModified": 1680865110,
"narHash": "sha256-SOBuUZe+icM5zqeEBGRY/fM6BDanEySw4Ph9TQgC3MY=",
"owner": "cachix",
"repo": "pre-commit-hooks.nix",
"rev": "a6a5e1fa5327a8809c51bc6c69407b8a76f1a4ec",
"type": "github"
},
"original": {
"owner": "cachix",
"repo": "pre-commit-hooks.nix",
"type": "github"
}
},
"root": {
"inputs": {
"devenv": "devenv",
"nixpkgs": "nixpkgs",
"pre-commit-hooks": "pre-commit-hooks"
}
}
},
"root": "root",
"version": 7
}

View file

@ -1,50 +0,0 @@
{ pkgs, config, ... }:
{
packages = [
pkgs.yarn
];
hosts."yeswiki.test" = "127.0.0.1";
languages.javascript.enable = true;
languages.php = {
enable = true;
version = "8.2";
ini = ''
memory_limit = 512M
'';
fpm.pools.web = {
# user = "mrflos";
settings = {
# "clear_env" = "no";
# "listen.owner" = "mrflos";
"pm" = "dynamic";
"pm.max_children" = 5;
"pm.start_servers" = 2;
"pm.min_spare_servers" = 1;
"pm.max_spare_servers" = 5;
};
};
};
services.mysql = {
enable = true;
package = pkgs.mariadb;
};
services.caddy = {
enable = true;
virtualHosts."http://yeswiki.test" = {
extraConfig = ''
root * /var/www/yeswiki
php_fastcgi unix/${config.languages.php.fpm.pools.web.socket}
file_server
'';
};
};
env.GREET = "Environnement de développement de mrflos";
enterShell = ''
echo $GREET
'';
}

View file

@ -1,3 +0,0 @@
inputs:
nixpkgs:
url: github:NixOS/nixpkgs/nixpkgs-unstable