Compare commits

...

22 commits
macos ... main

Author SHA1 Message Date
mrflos
255805947e feat(deploy): first integration of krops 2024-09-18 11:29:27 +03:00
mrflos
fc5c9a04ec fix(zoro): remove dns for wireguard client 2024-09-16 14:08:06 +03:00
mrflos
48ee250736 fix(zoro): better wireguard config bis 2024-09-16 13:28:23 +03:00
mrflos
46eb72c8c2 fix(zoro): better wireguard config 2024-09-16 13:27:20 +03:00
mrflos
22763e69d1 feat(cli): add mpv 2024-09-14 10:00:39 +03:00
mrflos
99445a500a feat(machines): add 12b key to zoro 2024-09-13 11:02:44 +03:00
mrflos
74c71c4f22 fix(machines): zoro typo 2024-09-11 20:41:18 +03:00
mrflos
95b6027225 fix(machines): zoro double import 2024-09-11 20:39:26 +03:00
mrflos
4ba06c3ab1 feat(modules): minimal server conf and cleaning 2024-09-11 20:37:40 +03:00
mrflos
0738d7da36 feat(machines): add zoro 2024-09-11 19:07:33 +03:00
mrflos
1c8a3a4ef3 feat(ignore): darwin-configuration.nix 2024-09-11 19:07:12 +03:00
Florian Schmitt
5f15979193 feat(desktop): add niri + cleaning 2024-09-06 22:36:37 +03:00
Florian Schmitt
aecd056e82 fix(kitty): no extra lineheight 2024-09-06 22:35:54 +03:00
Florian Schmitt
5beb18c87d fix(luffy): better wifi card suspend/append 2024-09-06 20:30:39 +03:00
Florian Schmitt
d8b0e30d67 fix(apps): remove neochat with unsecure lib 2024-09-06 20:29:58 +03:00
Florian Schmitt
6d9ae3ec72 style : nixfmt 2024-09-05 15:39:17 +03:00
Florian Schmitt
0b59cc1453 feat: mbp eris server eaglemode 2024-09-05 15:37:28 +03:00
mrflos
7b7d64bebf feat(starship): longer timeout delayy 2024-08-26 11:19:54 +03:00
mrflos
f6b5823194 feat(nvim): version 0.10 2024-08-20 16:10:10 +03:00
Florian Schmitt
02e704a1ba feat(lazygit): quit from vi 2024-08-12 18:10:17 +03:00
Florian Schmitt
abd79040f3 feat(lazygit): quit from vi 2024-08-12 18:10:17 +03:00
mrflos
86b388f501 feat(nvim): avoid popups 2024-08-12 17:19:53 +03:00
17 changed files with 782 additions and 491 deletions

3
.gitignore vendored
View file

@ -1 +1,4 @@
.DS_Store
deploy/result
configuration.nix
darwin-configuration.nix

57
deploy/krops.nix Normal file
View file

@ -0,0 +1,57 @@
let
krops = builtins.fetchGit {
url = "https://cgit.krebsco.de/krops/";
};
lib = import "${krops}/lib";
pkgs = import "${krops}/pkgs" {};
source = name: lib.evalSource [
{
dotfiles.file = toString ../dotfiles;
machines.file = toString ../machines;
modules.file = toString ../modules;
nixos-config.symlink = "machines/${name}/configuration.nix";
nixpkgs.git = {
clean.exclude = ["/.version-suffix"];
ref = "086b448a5d54fd117f4dc2dee55c9f0ff461bdc1";
url = https://github.com/NixOS/nixpkgs;
shallow = true;
};
#secrets.pass = {
# dir = toString ./secrets";
# name = "${name}";
#};
}
];
zoro = pkgs.krops.writeDeploy "deploy-zoro" {
source = source "zoro";
target = lib.mkTarget "optisseur@10.42.0.3:4222" // {
extraOptions = [
#"-o"
#"ControlMaster=auto"
#"-o"
#"ControlPath=~/.ssh/master-%r@%h:%p"
#"-o"
#"ControlPersist=480m"
];
sudo = true;
};
};
sanji = pkgs.krops.writeDeploy "deploy-sanji" {
source = source "sanji";
target = "root@server02.mydomain.org";
};
in {
zoro = zoro;
sanji = sanji;
all = pkgs.writeScript "deploy-all-servers"
(lib.concatStringsSep "\n" [ zoro sanji ]);
}
# ssh-add -t 4h ~/.ssh/id_ed25519
# nix-build ./krops.nix -A zoro && ./result
# nix-build ./krops.nix -A sanji && ./result
# nix-build ./krops.nix -A all && ./result

View file

@ -89,5 +89,5 @@ background_opacity 1
#background_image ~/Nextcloud/Images/Wallpapers/kitty-bg.png
#background_image_layout cscaled
#background_tint 0.99
modify_font cell_height 130%
#modify_font cell_height 130%
startup_session ~/.config/kitty/session.conf

View file

@ -0,0 +1 @@
quitOnTopLevelReturn: true

View file

@ -83,7 +83,7 @@ return {
},
},
window = {
position = "float",
position = "current",
},
},
},
@ -99,11 +99,24 @@ return {
},
},
},
{
"folke/noice.nvim",
event = "VeryLazy",
opts = {
cmdline = {
view = "cmdline",
},
presets = {
bottom_search = true,
command_palette = false,
},
},
},
{
"nvim-telescope/telescope.nvim",
opts = {
defaults = {
layout_strategy = "center",
layout_strategy = "bottom_pane",
layout_config = {
prompt_position = "top",
preview_cutoff = 5, -- Preview should always show (unless previewer = false)
@ -117,9 +130,9 @@ return {
sorting_strategy = "ascending",
border = true,
borderchars = {
prompt = { "", "", " ", "", "", "", "", "" },
results = { "", "", "", "", "", "", "", "" },
preview = { "", "", "", "", "", "", "", "" },
prompt = { "", "", "", "", "", "", "", "" },
results = { "", "", "", "", "", "", "", "" },
preview = { "", "", "", "", "", "", "", "" },
},
},
},

View file

@ -1,9 +1,9 @@
"$schema" = 'https://starship.rs/config-schema.json'
#format = '${custom.tztime}$all$directory$character'
format = '$directory$character'
right_format = '$all'
add_newline = true # Inserts a blank line between shell prompts
add_newline = true
command_timeout = 2000
[character]
success_symbol = '[➜ ](bold green)'

View file

@ -1,4 +1,3 @@
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help).
@ -14,7 +13,9 @@
"hid_apple.swap_fn_leftctrl=1"
"hid_apple.iso_layout=0"
];
boot.kernel.sysctl = { "vm.swappiness" = 10;};
boot.kernel.sysctl = {
"vm.swappiness" = 10;
};
# Bootloader.
boot.loader.systemd-boot.enable = true;
@ -38,7 +39,10 @@
networking.networkmanager.enable = true;
networking.firewall = {
enable = true;
allowedTCPPorts = [ 80 443 ];
allowedTCPPorts = [
80
443
];
};
# Set your time zone.
@ -76,7 +80,18 @@
../modules/local-dev.nix
../modules/nixos.nix
];
services.eris-server = {
enable = true;
backends = [
"badger+file:///var/eris?put&get" # local one on /var/eris
# "coap+tcp://eris.example.com:5683?get" # an online one
];
mountpoint = "/mnt/media/eris"; # useful to mount eris-fs folders
listenHttp = ":8080"; # or "[::1]:8080"
listenCoap = ":5683"; # or "[::1]:5683"
decode = true; # for http access via https://127.0.0.1:8080/uri-res/N2R?urn:eris:...
package = pkgs.eris-go; # default package
};
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
# on your system were taken. It's perfectly fine and recommended to leave

View file

@ -1,15 +1,27 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
config,
lib,
pkgs,
modulesPath,
...
}:
{
imports =
[ (modulesPath + "/hardware/network/broadcom-43xx.nix")
imports = [
(modulesPath + "/hardware/network/broadcom-43xx.nix")
(modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.availableKernelModules = [
"xhci_pci"
"nvme"
"usbhid"
"usb_storage"
"sd_mod"
];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.blacklistedKernelModules = [ ];
@ -17,39 +29,51 @@
#rtl8192eu
];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/d56411cf-7072-48a8-aab7-70fb73695e64";
fileSystems."/" = {
device = "/dev/disk/by-uuid/d56411cf-7072-48a8-aab7-70fb73695e64";
fsType = "ext4";
};
fileSystems."/boot/efi" =
{ device = "/dev/disk/by-uuid/37E1-D07F";
fileSystems."/boot/efi" = {
device = "/dev/disk/by-uuid/37E1-D07F";
fsType = "vfat";
};
fileSystems."/mnt/nas/music" =
{
fileSystems."/mnt/nas/music" = {
device = "192.168.1.2:/volume1/music";
options = [ "nfsvers=4.2" "x-systemd.automount" "noauto" "rw" "relatime" "user" "acl" "defaults"];
options = [
"nfsvers=4.2"
"x-systemd.automount"
"noauto"
"rw"
"relatime"
"user"
"acl"
"defaults"
];
fsType = "nfs";
};
services.rpcbind.enable = true; # needed for NFS
systemd.mounts = [{
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 = [{
systemd.automounts = [
{
wantedBy = [ "multi-user.target" ];
automountConfig = {
TimeoutIdleSec = "600";
};
where = "/mnt/nas/music";
}];
}
];
swapDevices = [ ];
@ -73,8 +97,8 @@
# brcmfmac being loaded during hibernation would not let a successful resume
# https://bugzilla.kernel.org/show_bug.cgi?id=101681#c116.
# Also brcmfmac could randomly crash on resume from sleep.
powerUpCommands = lib.mkBefore "${pkgs.kmod}/bin/modprobe brcmfmac";
powerDownCommands = lib.mkBefore "${pkgs.kmod}/bin/rmmod brcmfmac";
powerUpCommands = lib.mkBefore "${pkgs.kmod}/bin/modprobe brcmfmac && ${pkgs.kmod}/bin/modprobe brcmfmac_wcc";
powerDownCommands = lib.mkBefore "${pkgs.kmod}/bin/rmmod brcmfmac_wcc && ${pkgs.kmod}/bin/rmmod brcmfmac";
};
# USB subsystem wakes up MBP right after suspend unless we disable it.

View file

@ -0,0 +1,40 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "uas" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/f2ac5701-a169-4053-bca8-acdfa2227cfc";
fsType = "btrfs";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/0682-2C9F";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices =
[ { device = "/dev/disk/by-uuid/372c281f-7970-40a6-824d-97dd5d2d6043"; }
];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp0s31f6.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View file

@ -1,6 +1,12 @@
# cli programs should be available on servers and desktop
{ pkgs, ... }:
{ config, pkgs, ... }:
let
unstable =
import
(builtins.fetchTarball "https://github.com/nixos/nixpkgs/tarball/7afa2c97ebb0585d00c64c112344483e89e00545")
# reuse the current configuration
{ config = config.nixpkgs.config; };
in
{
programs.zsh.enable = true;
programs.fzf = {
@ -8,6 +14,14 @@
keybindings = true;
};
# programs.neovim = {
# enable = true;
# defaultEditor = true;
# package = unstable.neovim;
# viAlias = true;
# vimAlias = true;
# };
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = with pkgs; [
@ -35,12 +49,15 @@
htop
lazygit
lsd
magic-wormhole
mc
micro
mosh
mpc-cli
mpd
mpv
neofetch
unstable.neovim
ollama
pandoc
pass

View file

@ -63,7 +63,7 @@
droidcam.enable = true;
firefox.enable = true;
firefox.languagePacks = [ "fr" ];
hyprland.enable = true;
#hyprland.enable = true;
ssh.askPassword = pkgs.lib.mkForce "${pkgs.ksshaskpass.out}/bin/ksshaskpass"; # conflict between kde and gnome cf. https://github.com/NixOS/nixpkgs/issues/75867
ssh.startAgent = true;
@ -96,7 +96,9 @@
(callPackage ./sddm-rose-pine.nix { })
(vscode-with-extensions.override {
vscode = vscodium;
vscodeExtensions = with vscode-extensions; [
vscodeExtensions =
with vscode-extensions;
[
#bmewburn.vscode-intelephense-client
#dracula-theme.theme-dracula
mvllow.rose-pine
@ -117,8 +119,7 @@
version = "0.9.2";
sha256 = "113w2iis4zi4z3sqc3vd2apyrh52hbh2gvmxjr5yvjpmrsksclbd";
}
]
;
];
})
(chromium.override {
enableWideVine = true; # DRM support
@ -127,34 +128,33 @@
audacious
calibre
digikam
#rose-pine-gtk-theme
#rose-pine-icon-theme
#element-desktop
eaglemode
filezilla
gimp-with-plugins
hunspell
hunspellDicts.fr-moderne
#hyprpaper
inkscape-with-extensions
#kde-rounded-corners
kitty
latte-dock
libreoffice-qt
libsForQt5.ark
#libsForQt5.krohnkite
#libsForQt5.bismuth
mixxx
mumble
neochat
nextcloud-client
obsidian
signal-desktop
thunderbird
tigervnc
#tor-browser-bundle-bin
transmission-qt
unetbootin
vlc
## niri scroll window manager
niri
waybar
fuzzel
alacritty
];
# Do not restart the display manager automatically

View file

@ -1,5 +1,10 @@
# Inject the right home-manager config for the machine.
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}:
let
plasma-manager = pkgs.fetchFromGitHub {
owner = "pjones";
@ -15,12 +20,11 @@ let
${pkgs.swww}/bin/swww img /home/mrflos/Nextcloud/Images/Wallpapers/chihiro014.jpg &
'';
in {
in
{
# TODO can we automate the installation of home-manager ?
# sudo nix-channel --add https://github.com/nix-community/home-manager/archive/release-24.05.tar.gz home-manager
imports = [
<home-manager/nixos>
];
imports = [ <home-manager/nixos> ];
# Let Home Manager install and manage itself.
#programs.home-manager.enable = true;
@ -29,14 +33,23 @@ in {
isNormalUser = true;
description = "mrflos";
createHome = true;
extraGroups = ["users" "docker" "libvirtd" "lxd" "networkmanager" "wheel" ];
extraGroups = [
"users"
"docker"
"libvirtd"
"lxd"
"networkmanager"
"wheel"
];
uid = 1000;
shell = pkgs.zsh;
};
nix.settings.trusted-users = [ "mrflos" ];
home-manager.users.mrflos = { pkgs, ... }: {
home-manager.backupFileExtension = "backup";
home-manager.users.mrflos =
{ pkgs, ... }:
{
home.stateVersion = "23.05";
home.packages = with pkgs; [
gcc
@ -69,6 +82,11 @@ in {
recursive = true;
};
"./.config/lazygit/" = {
source = ../dotfiles/lazygit;
recursive = true;
};
"./.config/tmux/" = {
source = ../dotfiles/tmux;
recursive = true;
@ -88,7 +106,9 @@ in {
address = "mrflos@chmok.net";
primary = true;
thunderbird = { enable = true; };
thunderbird = {
enable = true;
};
imap = {
host = "mail.infomaniak.com";
port = 993;
@ -104,7 +124,9 @@ in {
userName = "mrflos@yeswiki.pro";
address = "mrflos@yeswiki.pro";
thunderbird = { enable = true; };
thunderbird = {
enable = true;
};
imap = {
host = "mail.infomaniak.com";
port = 993;
@ -121,7 +143,9 @@ in {
address = "mrflos@mrflos.pw";
primary = false;
thunderbird = { enable = true; };
thunderbird = {
enable = true;
};
imap = {
host = "mrflos.pw";
port = 993;
@ -141,7 +165,9 @@ in {
address = "contact@yeswiki.pro";
primary = false;
thunderbird = { enable = true; };
thunderbird = {
enable = true;
};
imap = {
host = "mail.infomaniak.com";
port = 993;
@ -158,7 +184,9 @@ in {
address = "contact@yeswiki.net";
primary = false;
thunderbird = { enable = true; };
thunderbird = {
enable = true;
};
imap = {
host = "mail.infomaniak.com";
port = 993;
@ -192,8 +220,8 @@ in {
core.fileMode = false;
};
};
neovim = {
enable = true;
defaultEditor = true;
viAlias = true;
vimAlias = true;
@ -217,10 +245,14 @@ in {
nixedit = "vi /etc/nixos";
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";
socks = "ssh -N -f -C -D 9090 mrflos@yunohost.yeswiki.net -p 6742";
vi = "/run/current-system/sw/bin/nvim";
vim = "/run/current-system/sw/bin/nvim";
yeswiki-updater = "cd /home/mrflos/Developpements/yeswiki-installer/ && sudo php yeswiki-updater.php";
};
initExtra = ''
export BUN_INSTALL="$HOME/.bun"
export PHP_CS_FIXER_IGNORE_ENV=1
export PATH="$HOME/.local/bin:$BUN_INSTALL/bin:$PATH"
eval "$(atuin init zsh)"
eval "$(zoxide init zsh)"
@ -232,7 +264,10 @@ in {
zstyle :omz:plugins:ssh-agent agent-forwarding yes
zstyle :omz:plugins:ssh-agent lazy yes
'';
plugins = [ "git" "ssh-agent" ];
plugins = [
"git"
"ssh-agent"
];
# theme = "robbyrussell";
};
};
@ -250,7 +285,8 @@ in {
"$file" = "dolphin";
"$browser" = "firefox";
bind = [
bind =
[
", Print, exec, grimblast copy area"
# Window/Session actions
"$mod, Q, killactive"
@ -276,7 +312,6 @@ in {
"$mod, down, movefocus, d"
"ALT, Tab, movefocus, d"
# Switch workspaces relative to the active workspace with mainMod + CTRL + [←→]
"$mod CTRL, right, workspace, r+1"
"$mod CTRL, left, workspace, r-1"
@ -308,19 +343,23 @@ in {
++ (
# workspaces
# binds $mod + [shift +] {1..10} to [move to] workspace {1..10}
builtins.concatLists (builtins.genList (
x: let
ws = let
builtins.concatLists (
builtins.genList (
x:
let
ws =
let
c = (x + 1) / 10;
in
builtins.toString (x + 1 - (c * 10));
in [
in
[
"$mod, ${ws}, workspace, ${toString (x + 1)}"
"$mod SHIFT, ${ws}, movetoworkspace, ${toString (x + 1)}"
"$mod ALT, ${ws}, movetoworkspacesilent, ${toString (x + 1)}" # Move window silently to workspace Super + Alt + [0-9]
]
) 10
)
10)
);
# Move/Resize windows with mainMod + LMB/RMB and dragging

View file

@ -45,21 +45,35 @@
"kaccess"."Toggle Screen Reader On and Off" = "Meta+Alt+S";
"kcm_touchpad"."Disable Touchpad" = "Touchpad Off";
"kcm_touchpad"."Enable Touchpad" = "Touchpad On";
"kcm_touchpad"."Toggle Touchpad" = ["Touchpad Toggle,Touchpad Toggle" "Meta+Ctrl+Zenkaku Hankaku"];
"kcm_touchpad"."Toggle Touchpad" = [
"Touchpad Toggle,Touchpad Toggle"
"Meta+Ctrl+Zenkaku Hankaku"
];
"kded5"."Show System Activity" = "Ctrl+Esc";
"kded5"."display" = ["Display" "Meta+P,Display" "Meta+P,Changer d'affichage"];
"kded5"."display" = [
"Display"
"Meta+P,Display"
"Meta+P,Changer d'affichage"
];
"khotkeys"."{d03619b6-9b3c-48cc-9d9c-a2aadb485550}" = [ ];
"kitty.desktop"."_launch" = "Meta+T,none";
"kmix"."decrease_microphone_volume" = "Microphone Volume Down";
"kmix"."decrease_volume" = "Volume Down";
"kmix"."increase_microphone_volume" = "Microphone Volume Up";
"kmix"."increase_volume" = "Volume Up";
"kmix"."mic_mute" = ["Microphone Mute" "Meta+Volume Mute,Microphone Mute" "Meta+Volume Mute,Couper le son du microphone"];
"kmix"."mic_mute" = [
"Microphone Mute"
"Meta+Volume Mute,Microphone Mute"
"Meta+Volume Mute,Couper le son du microphone"
];
"kmix"."mute" = "Volume Mute";
"konversation"."next_active_tab" = [ ];
"konversation"."toggle_mainwindow_visibility" = [ ];
"ksmserver"."Halt Without Confirmation" = "none,,Éteindre sans confirmation";
"ksmserver"."Lock Session" = ["Screensaver,Meta+L" "Screensaver,Verrouiller la session"];
"ksmserver"."Lock Session" = [
"Screensaver,Meta+L"
"Screensaver,Verrouiller la session"
];
"ksmserver"."Log Out" = "Ctrl+Alt+Del";
"ksmserver"."Log Out Without Confirmation" = "none,,Déconnexion sans confirmation";
"ksmserver"."Reboot Without Confirmation" = "none,,Redémarrer sans confirmation";
@ -67,7 +81,11 @@
"kwin"."Decrease Opacity" = "none,,Diminuer l'opacité de la fenêtre active de 5 %";
"kwin"."Edit Tiles" = "none,Meta+T,Basculer ou sortir de l'éditeur de recouvrement";
"kwin"."Expose" = "Ctrl+F9";
"kwin"."ExposeAll" = ["Ctrl+F10" "Launch (C),Ctrl+F10" "Launch (C),Activer / désactiver la présentation des fenêtres (tous les bureaux)"];
"kwin"."ExposeAll" = [
"Ctrl+F10"
"Launch (C),Ctrl+F10"
"Launch (C),Activer / désactiver la présentation des fenêtres (tous les bureaux)"
];
"kwin"."ExposeClass" = "Ctrl+F7";
"kwin"."ExposeClassCurrentDesktop" = [ ];
"kwin"."Grid-Tiling: Close Desktop" = [ ];
@ -198,7 +216,10 @@
"kwin"."Walk Through Windows of Current Application Alternative (Reverse)" = "none,,Naviguer parmi les fenêtres de l'application alternative courante (en ordre inverse)";
"kwin"."Window Above Other Windows" = "none,,Conserver une fenêtre au-dessus des autres";
"kwin"."Window Below Other Windows" = "none,,Conserver une fenêtre au-dessous des autres";
"kwin"."Window Close" = ["Alt+F4" "Meta+Q,Alt+F4,Fermer une fenêtre"];
"kwin"."Window Close" = [
"Alt+F4"
"Meta+Q,Alt+F4,Fermer une fenêtre"
];
"kwin"."Window Fullscreen" = "none,,Mettre une fenêtre en plein écran";
"kwin"."Window Grow Horizontal" = "none,,Maximiser horizontalement une fenêtre";
"kwin"."Window Grow Vertical" = "none,,Maximiser verticalement une fenêtre";
@ -206,7 +227,10 @@
"kwin"."Window Maximize" = "Meta+PgUp";
"kwin"."Window Maximize Horizontal" = "none,,Maximiser horizontalement une fenêtre";
"kwin"."Window Maximize Vertical" = "none,,Maximiser verticalement une fenêtre";
"kwin"."Window Minimize" = ["Meta+PgDown" "Meta+M,Meta+PgDown,Réduire une fenêtre"];
"kwin"."Window Minimize" = [
"Meta+PgDown"
"Meta+M,Meta+PgDown,Réduire une fenêtre"
];
"kwin"."Window Move" = "none,,Déplacer une fenêtre";
"kwin"."Window Move Center" = "none,,Déplacer la fenêtre au centre";
"kwin"."Window No Border" = "none,,Afficher / Masquer la barre de titre et la bordure";
@ -270,7 +294,11 @@
"kwin"."Window to Screen 6" = "none,,Envoyer la fenêtre sur l'écran 6";
"kwin"."Window to Screen 7" = "none,,Envoyer la fenêtre sur l'écran 7";
"kwin"."view_actual_size" = "Meta+0";
"kwin"."view_zoom_in" = ["Meta++" "Meta+=,Meta++" "Meta+=,Zoom avant"];
"kwin"."view_zoom_in" = [
"Meta++"
"Meta+=,Meta++"
"Meta+=,Zoom avant"
];
"kwin"."view_zoom_out" = "Meta+-";
"lattedock"."activate entry 1" = "none,Meta+1,Activer l'entrée 1";
"lattedock"."activate entry 10" = "none,Meta+0,Activer l'entrée 10";
@ -326,8 +354,15 @@
"org.kde.konsole.desktop"."NewWindow" = [ ];
"org.kde.konsole.desktop"."_launch" = "Ctrl+Alt+T,none";
"org.kde.krunner.desktop"."RunClipboard" = "Alt+Shift+F2,none";
"org.kde.krunner.desktop"."_launch" = ["Alt+Space" "Alt+F2" "Search,none"];
"org.kde.plasma.emojier.desktop"."_launch" = ["Meta+." "Meta+Ctrl+Alt+Shift+Space,none"];
"org.kde.krunner.desktop"."_launch" = [
"Alt+Space"
"Alt+F2"
"Search,none"
];
"org.kde.plasma.emojier.desktop"."_launch" = [
"Meta+."
"Meta+Ctrl+Alt+Shift+Space,none"
];
"org.kde.spectacle.desktop"."ActiveWindowScreenShot" = "Meta+Print,none";
"org.kde.spectacle.desktop"."CurrentMonitorScreenShot" = [ ];
"org.kde.spectacle.desktop"."FullScreenScreenShot" = "Shift+Print,none";
@ -1090,7 +1125,7 @@
"kwinrc"."Tiling/ed6da6d2-dc03-5e69-aae5-b2fee83fe2cd"."tiles" = "{\"layoutDirection\":\"horizontal\",\"tiles\":[{\"width\":0.25},{\"width\":0.5},{\"width\":0.25}]}";
"kwinrc"."Windows"."AutoRaise" = true;
"kwinrc"."Windows"."AutoRaiseInterval" = 300;
"kwinrc"."Windows"."ElectricBorderCornerRatio" = 0.01;
"kwinrc"."Windows"."ElectricBorderCornerRatio" = 1.0e-2;
"kwinrc"."Windows"."Placement" = "Maximizing";
"kwinrc"."Windows"."RollOverDesktops" = true;
"kwinrc"."Xwayland"."Scale" = 1.75;

View file

@ -1,5 +1,11 @@
# Local developpement
{ pkgs, config, lib, ... }: {
{
pkgs,
config,
lib,
...
}:
{
virtualisation = {
docker.enable = true;
#docker.rootless = {
@ -17,8 +23,10 @@
${pkgs.systemd}/bin/systemctl start mysql
# etc
'';
serviceConfig = let
startstop = command:
serviceConfig =
let
startstop =
command:
(pkgs.writeShellApplication {
name = "yeswikidev";
runtimeInputs = with pkgs; [ systemd ];
@ -42,6 +50,7 @@
# '';
#})) commands;
in
#execs = {
# ExecStart = "start";
# ExecStop = "stop";
@ -50,7 +59,7 @@
# https://nixos.org/manual/nix/stable/language/builtins#builtins-mapAttrs
#execAttrs = attrNames execs; # ["Start" "Stop"];
#execs2 = mapAttrs (k: v: ()) execs;
in {
{
# pkgs.writeScript, pkgs.writeScriptBin
#ExecStart = startstop "start";
#ExecStop = startstop "stop";
@ -70,17 +79,23 @@
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = with pkgs;
environment.systemPackages =
with pkgs;
let
php83 = pkgs.php83.buildEnv { extraConfig = "memory_limit = 2G"; };
in [
in
[
#clang
dart-sass
dbeaver-bin
docker-compose
eris-go
gcc
go
nixfmt-rfc-style
lua
lua-language-server
luarocks
nixpkgs-fmt
nodejs
nodePackages.eslint

View file

@ -0,0 +1,35 @@
# cli basic programs and configs that should be available on every server
{ config, pkgs, ... }:
{
programs.neovim = {
enable = true;
defaultEditor = true;
viAlias = true;
vimAlias = true;
};
# List packages installed in system profile. To search, run:
# $ nix search wget
environment.systemPackages = with pkgs; [
bat
btop
findutils
fzf
gnugrep
git
glances
htop
lazygit
lsd
magic-wormhole
mc
micro
mosh
neovim
ripgrep
tmux
tree
unzip
wget
];
}

View file

@ -14,7 +14,5 @@
};
# TODO : find what is installing this, probably obsidian?
nixpkgs.config.permittedInsecurePackages = [
"electron-25.9.0"
];
nixpkgs.config.permittedInsecurePackages = [ "electron-25.9.0" ];
}

View file

@ -1,6 +1,7 @@
{ stdenvNoCC
, fetchFromGitHub
, libsForQt5
{
stdenvNoCC,
fetchFromGitHub,
libsForQt5,
}:
stdenvNoCC.mkDerivation rec {
@ -8,9 +9,7 @@ stdenvNoCC.mkDerivation rec {
version = "1.2";
dontBuild = true;
propagatedUserEnvPkgs = [
libsForQt5.qt5.qtgraphicaleffects
];
propagatedUserEnvPkgs = [ libsForQt5.qt5.qtgraphicaleffects ];
src = fetchFromGitHub {
owner = "lwndhrst";