Compare commits
	
		
			5 commits
		
	
	
		
			4222e4ac66
			...
			2b06c59dd8
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 2b06c59dd8 | |||
| c0db186d73 | |||
| 82b0a6cab1 | |||
| d95c277383 | |||
| e64fadd32b | 
					 11 changed files with 191 additions and 156 deletions
				
			
		| 
						 | 
				
			
			@ -181,7 +181,7 @@ in
 | 
			
		|||
 | 
			
		||||
  # Flatpak support
 | 
			
		||||
  services.flatpak.enable = true;
 | 
			
		||||
  xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-kde ];
 | 
			
		||||
  xdg.portal.extraPortals = [ pkgs.kdePackages.xdg-desktop-portal-kde ];
 | 
			
		||||
 | 
			
		||||
  # Define a user account. Don't forget to set a password with `passwd`.
 | 
			
		||||
  users.users.spiollinux = {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -40,7 +40,7 @@
 | 
			
		|||
    exfat
 | 
			
		||||
    iotop
 | 
			
		||||
    cifs-utils
 | 
			
		||||
    dstat
 | 
			
		||||
    dool
 | 
			
		||||
    lsof
 | 
			
		||||
    macchanger
 | 
			
		||||
    borgbackup
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
{ pkgs, ... }:
 | 
			
		||||
{
 | 
			
		||||
  # Enable sound.
 | 
			
		||||
  hardware.pulseaudio = {
 | 
			
		||||
  services.pulseaudio = {
 | 
			
		||||
    enable = true;
 | 
			
		||||
    package = pkgs.pulseaudioFull;
 | 
			
		||||
    # decouple pulseaudio application and sink volumes
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										54
									
								
								flake.lock
									
										
									
										generated
									
									
									
								
							
							
						
						
									
										54
									
								
								flake.lock
									
										
									
										generated
									
									
									
								
							| 
						 | 
				
			
			@ -102,16 +102,16 @@
 | 
			
		|||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1747020534,
 | 
			
		||||
        "narHash": "sha256-D/6rkiC6w2p+4SwRiVKrWIeYzun8FBg7NlMKMwQMxO0=",
 | 
			
		||||
        "lastModified": 1747556831,
 | 
			
		||||
        "narHash": "sha256-Qb84nbYFFk0DzFeqVoHltS2RodAYY5/HZQKE8WnBDsc=",
 | 
			
		||||
        "owner": "nix-community",
 | 
			
		||||
        "repo": "home-manager",
 | 
			
		||||
        "rev": "b4bbdc6fde16fc2051fcde232f6e288cd22007ca",
 | 
			
		||||
        "rev": "d0bbd221482c2713cccb80220f3c9d16a6e20a33",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "owner": "nix-community",
 | 
			
		||||
        "ref": "release-24.11",
 | 
			
		||||
        "ref": "release-25.05",
 | 
			
		||||
        "repo": "home-manager",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
| 
						 | 
				
			
			@ -163,27 +163,27 @@
 | 
			
		|||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1743127615,
 | 
			
		||||
        "narHash": "sha256-+sMGqywrSr50BGMLMeY789mSrzjkoxZiu61eWjYS/8o=",
 | 
			
		||||
        "lastModified": 1747752302,
 | 
			
		||||
        "narHash": "sha256-XqNAcEFfe5tJZGlx+Su0G67ZwRwZmHNWwiMK0fji0Hw=",
 | 
			
		||||
        "owner": "LnL7",
 | 
			
		||||
        "repo": "nix-darwin",
 | 
			
		||||
        "rev": "fc843893cecc1838a59713ee3e50e9e7edc6207c",
 | 
			
		||||
        "rev": "74ecd01d2c122f8a4a48066ab1d48f3e01671671",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "owner": "LnL7",
 | 
			
		||||
        "ref": "nix-darwin-24.11",
 | 
			
		||||
        "ref": "nix-darwin-25.05",
 | 
			
		||||
        "repo": "nix-darwin",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "nixos-hardware": {
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1747129300,
 | 
			
		||||
        "narHash": "sha256-L3clA5YGeYCF47ghsI7Tcex+DnaaN/BbQ4dR2wzoiKg=",
 | 
			
		||||
        "lastModified": 1747723695,
 | 
			
		||||
        "narHash": "sha256-lSXzv33yv1O9r9Ai1MtYFDX3OKhWsZMn/5FFb4Rni/k=",
 | 
			
		||||
        "owner": "NixOS",
 | 
			
		||||
        "repo": "nixos-hardware",
 | 
			
		||||
        "rev": "e81fd167b33121269149c57806599045fd33eeed",
 | 
			
		||||
        "rev": "6ac6ec6fcb410e15a60ef5ec94b8a2b35b5dd282",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
| 
						 | 
				
			
			@ -195,11 +195,11 @@
 | 
			
		|||
    },
 | 
			
		||||
    "nixos-unstable": {
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1746904237,
 | 
			
		||||
        "narHash": "sha256-3e+AVBczosP5dCLQmMoMEogM57gmZ2qrVSrmq9aResQ=",
 | 
			
		||||
        "lastModified": 1747542820,
 | 
			
		||||
        "narHash": "sha256-GaOZntlJ6gPPbbkTLjbd8BMWaDYafhuuYRNrxCGnPJw=",
 | 
			
		||||
        "owner": "NixOS",
 | 
			
		||||
        "repo": "nixpkgs",
 | 
			
		||||
        "rev": "d89fc19e405cb2d55ce7cc114356846a0ee5e956",
 | 
			
		||||
        "rev": "292fa7d4f6519c074f0a50394dbbe69859bb6043",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
| 
						 | 
				
			
			@ -243,27 +243,27 @@
 | 
			
		|||
    },
 | 
			
		||||
    "nixpkgs_2": {
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1746957726,
 | 
			
		||||
        "narHash": "sha256-k9ut1LSfHCr0AW82ttEQzXVCqmyWVA5+SHJkS5ID/Jo=",
 | 
			
		||||
        "lastModified": 1747610100,
 | 
			
		||||
        "narHash": "sha256-rpR5ZPMkWzcnCcYYo3lScqfuzEw5Uyfh+R0EKZfroAc=",
 | 
			
		||||
        "owner": "NixOS",
 | 
			
		||||
        "repo": "nixpkgs",
 | 
			
		||||
        "rev": "a39ed32a651fdee6842ec930761e31d1f242cb94",
 | 
			
		||||
        "rev": "ca49c4304acf0973078db0a9d200fd2bae75676d",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
        "owner": "NixOS",
 | 
			
		||||
        "ref": "nixos-24.11",
 | 
			
		||||
        "ref": "nixos-25.05",
 | 
			
		||||
        "repo": "nixpkgs",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "nixpkgs_3": {
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1746904237,
 | 
			
		||||
        "narHash": "sha256-3e+AVBczosP5dCLQmMoMEogM57gmZ2qrVSrmq9aResQ=",
 | 
			
		||||
        "lastModified": 1747542820,
 | 
			
		||||
        "narHash": "sha256-GaOZntlJ6gPPbbkTLjbd8BMWaDYafhuuYRNrxCGnPJw=",
 | 
			
		||||
        "owner": "nixos",
 | 
			
		||||
        "repo": "nixpkgs",
 | 
			
		||||
        "rev": "d89fc19e405cb2d55ce7cc114356846a0ee5e956",
 | 
			
		||||
        "rev": "292fa7d4f6519c074f0a50394dbbe69859bb6043",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
| 
						 | 
				
			
			@ -280,11 +280,11 @@
 | 
			
		|||
        "treefmt-nix": "treefmt-nix"
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1747261242,
 | 
			
		||||
        "narHash": "sha256-6p8kO62jbk+LUrDrLT23XbClNRyosnlfh/KCbE5fwnQ=",
 | 
			
		||||
        "lastModified": 1747753144,
 | 
			
		||||
        "narHash": "sha256-yCkh/1/NMrvXP0Ddqo4kX7rqLrn6euLkmP2RTvyLims=",
 | 
			
		||||
        "owner": "nix-community",
 | 
			
		||||
        "repo": "NUR",
 | 
			
		||||
        "rev": "e29c558fa4174da179e2e7f9a41c34466a200fda",
 | 
			
		||||
        "rev": "e52a85ce10a990ac6d7356f3a753fde0860426a8",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
| 
						 | 
				
			
			@ -398,11 +398,11 @@
 | 
			
		|||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      "locked": {
 | 
			
		||||
        "lastModified": 1746216483,
 | 
			
		||||
        "narHash": "sha256-4h3s1L/kKqt3gMDcVfN8/4v2jqHrgLIe4qok4ApH5x4=",
 | 
			
		||||
        "lastModified": 1747469671,
 | 
			
		||||
        "narHash": "sha256-bo1ptiFoNqm6m1B2iAhJmWCBmqveLVvxom6xKmtuzjg=",
 | 
			
		||||
        "owner": "numtide",
 | 
			
		||||
        "repo": "treefmt-nix",
 | 
			
		||||
        "rev": "29ec5026372e0dec56f890e50dbe4f45930320fd",
 | 
			
		||||
        "rev": "ab0378b61b0d85e73a8ab05d5c6029b5bd58c9fb",
 | 
			
		||||
        "type": "github"
 | 
			
		||||
      },
 | 
			
		||||
      "original": {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										18
									
								
								flake.nix
									
										
									
									
									
								
							
							
						
						
									
										18
									
								
								flake.nix
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -2,11 +2,11 @@
 | 
			
		|||
  description = "NixOS system flake";
 | 
			
		||||
 | 
			
		||||
  inputs = {
 | 
			
		||||
    nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11";
 | 
			
		||||
    nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";
 | 
			
		||||
    nixos-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
 | 
			
		||||
    nixos-hardware.url = "github:NixOS/nixos-hardware/master";
 | 
			
		||||
    home-manager = {
 | 
			
		||||
      url = "github:nix-community/home-manager/release-24.11";
 | 
			
		||||
      url = "github:nix-community/home-manager/release-25.05";
 | 
			
		||||
      inputs.nixpkgs.follows = "nixpkgs";
 | 
			
		||||
    };
 | 
			
		||||
    lanzaboote = {
 | 
			
		||||
| 
						 | 
				
			
			@ -19,7 +19,7 @@
 | 
			
		|||
      inputs.nixpkgs.follows = "nixpkgs";
 | 
			
		||||
    };
 | 
			
		||||
    nix-darwin = {
 | 
			
		||||
      url = "github:LnL7/nix-darwin/nix-darwin-24.11";
 | 
			
		||||
      url = "github:LnL7/nix-darwin/nix-darwin-25.05";
 | 
			
		||||
      inputs.nixpkgs.follows = "nixpkgs";
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -46,6 +46,16 @@
 | 
			
		|||
    let
 | 
			
		||||
      # FIXME: allow different systems
 | 
			
		||||
      systems = utils.lib.system;
 | 
			
		||||
 | 
			
		||||
      # ability to extend nixpkgs with patches, e.g. from PRs or staging. See https://ertt.ca/nix/patch-nixpkgs/
 | 
			
		||||
      mkNixpkgs-patched =
 | 
			
		||||
        system:
 | 
			
		||||
        (import nixpkgs { inherit system; }).applyPatches {
 | 
			
		||||
          name = "nixpkgs-patched";
 | 
			
		||||
          src = nixpkgs;
 | 
			
		||||
          patches = [ ];
 | 
			
		||||
        };
 | 
			
		||||
 | 
			
		||||
      # necessary to make the top-level inputs available to system configuration
 | 
			
		||||
      # inspired by https://jade.fyi/blog/flakes-arent-real/
 | 
			
		||||
      inputInjection =
 | 
			
		||||
| 
						 | 
				
			
			@ -78,7 +88,7 @@
 | 
			
		|||
      mkHomeManager =
 | 
			
		||||
        confName: user: system: # unfortunately, home-manager configs are still system-specific
 | 
			
		||||
        home-manager.lib.homeManagerConfiguration {
 | 
			
		||||
          pkgs = nixpkgs.legacyPackages.${system};
 | 
			
		||||
          pkgs = import (mkNixpkgs-patched system) { inherit system; };
 | 
			
		||||
          modules = [
 | 
			
		||||
            {
 | 
			
		||||
              imports = [
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -51,9 +51,7 @@
 | 
			
		|||
      merge.tool = "vimdiff";
 | 
			
		||||
      # provide `git mergetool -t nixfmt`
 | 
			
		||||
      mergetool.nixfmt = {
 | 
			
		||||
        cmd = "${
 | 
			
		||||
          lib.getExe inputs.nixos-unstable.legacyPackages.${system}.nixfmt-rfc-style
 | 
			
		||||
        } --mergetool \"$BASE\" \"$LOCAL\" \"$REMOTE\" \"$MERGED\"";
 | 
			
		||||
        cmd = "${lib.getExe pkgs.nixfmt-rfc-style} --mergetool \"$BASE\" \"$LOCAL\" \"$REMOTE\" \"$MERGED\"";
 | 
			
		||||
        trustExitCode = true;
 | 
			
		||||
      };
 | 
			
		||||
      core.excludesfile = toString (
 | 
			
		||||
| 
						 | 
				
			
			@ -105,7 +103,7 @@
 | 
			
		|||
    enable = true;
 | 
			
		||||
    syntaxHighlighting.enable = true;
 | 
			
		||||
    history.ignoreSpace = true;
 | 
			
		||||
    initExtra = ''
 | 
			
		||||
    initContent = ''
 | 
			
		||||
      # Uncomment following line if you want red dots to be displayed while waiting for completion
 | 
			
		||||
      COMPLETION_WAITING_DOTS="true"
 | 
			
		||||
      ### Fix slowness of pastes with zsh-syntax-highlighting.zsh
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -72,7 +72,7 @@
 | 
			
		|||
  services.gpg-agent = {
 | 
			
		||||
    enable = true;
 | 
			
		||||
    #enableSshSupport = true;
 | 
			
		||||
    pinentryPackage = pkgs.pinentry-qt;
 | 
			
		||||
    pinentry.package = pkgs.pinentry-qt;
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  programs.ssh = {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -17,16 +17,16 @@ let
 | 
			
		|||
      inkscape
 | 
			
		||||
      darktable
 | 
			
		||||
      exiftool
 | 
			
		||||
      gimp
 | 
			
		||||
      gimp3
 | 
			
		||||
    ]
 | 
			
		||||
    ++ (with gimpPlugins; [
 | 
			
		||||
      fourier
 | 
			
		||||
      lqrPlugin
 | 
			
		||||
    ++ (with gimp3Plugins; [
 | 
			
		||||
      #fourier  # broken
 | 
			
		||||
      #lqrPlugin  # broken
 | 
			
		||||
    ])
 | 
			
		||||
    ++ lib.optionals pkgs.stdenv.isLinux [
 | 
			
		||||
      hugin
 | 
			
		||||
      luminanceHDR
 | 
			
		||||
      xournal
 | 
			
		||||
      #luminanceHDR  # FIXME, build failure
 | 
			
		||||
      xournalpp
 | 
			
		||||
    ];
 | 
			
		||||
 | 
			
		||||
  multimediaApps =
 | 
			
		||||
| 
						 | 
				
			
			@ -38,7 +38,7 @@ let
 | 
			
		|||
      vlc
 | 
			
		||||
      amarok
 | 
			
		||||
      clementine
 | 
			
		||||
      elisa
 | 
			
		||||
      kdePackages.elisa
 | 
			
		||||
      musescore
 | 
			
		||||
      tenacity
 | 
			
		||||
      soundkonverter
 | 
			
		||||
| 
						 | 
				
			
			@ -122,7 +122,7 @@ let
 | 
			
		|||
    ];
 | 
			
		||||
 | 
			
		||||
  pythonTools = with python3Packages; [
 | 
			
		||||
    python3 # to shadow old macOS python
 | 
			
		||||
    python # to shadow old macOS python
 | 
			
		||||
    ipython
 | 
			
		||||
    uv
 | 
			
		||||
    pip
 | 
			
		||||
| 
						 | 
				
			
			@ -148,7 +148,7 @@ let
 | 
			
		|||
  desktopLinux = [
 | 
			
		||||
    firefox
 | 
			
		||||
    chromium
 | 
			
		||||
    falkon
 | 
			
		||||
    kdePackages.falkon
 | 
			
		||||
    thunderbird
 | 
			
		||||
    calibre
 | 
			
		||||
    dino
 | 
			
		||||
| 
						 | 
				
			
			@ -172,7 +172,6 @@ let
 | 
			
		|||
      pulseaudioSupport = pkgs.stdenv.isLinux;
 | 
			
		||||
    })
 | 
			
		||||
    pdfpc
 | 
			
		||||
    quaternion
 | 
			
		||||
    nheko
 | 
			
		||||
    gpxsee
 | 
			
		||||
    subsurface
 | 
			
		||||
| 
						 | 
				
			
			@ -183,7 +182,7 @@ let
 | 
			
		|||
    #(pkgs.pidgin-with-plugins.override {
 | 
			
		||||
    #    plugins = [ pkgs.pidginotr ];})
 | 
			
		||||
 | 
			
		||||
    unstable.logseq
 | 
			
		||||
    logseq
 | 
			
		||||
 | 
			
		||||
    # for Hibiscus banking software
 | 
			
		||||
    jameica
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -11,112 +11,114 @@
 | 
			
		|||
    enable = true;
 | 
			
		||||
    package = pkgs.vscodium;
 | 
			
		||||
    mutableExtensionsDir = true;
 | 
			
		||||
    extensions =
 | 
			
		||||
      with pkgs.vscode-extensions;
 | 
			
		||||
      [
 | 
			
		||||
        ms-python.python
 | 
			
		||||
        vscodevim.vim
 | 
			
		||||
        yzhang.markdown-all-in-one
 | 
			
		||||
        bungcip.better-toml
 | 
			
		||||
        eamodio.gitlens
 | 
			
		||||
        jnoortheen.nix-ide
 | 
			
		||||
        mkhl.direnv
 | 
			
		||||
        editorconfig.editorconfig
 | 
			
		||||
      ]
 | 
			
		||||
      ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [
 | 
			
		||||
    profiles.default = {
 | 
			
		||||
      extensions =
 | 
			
		||||
        with pkgs.vscode-extensions;
 | 
			
		||||
        [
 | 
			
		||||
          ms-python.python
 | 
			
		||||
          vscodevim.vim
 | 
			
		||||
          yzhang.markdown-all-in-one
 | 
			
		||||
          bungcip.better-toml
 | 
			
		||||
          eamodio.gitlens
 | 
			
		||||
          jnoortheen.nix-ide
 | 
			
		||||
          mkhl.direnv
 | 
			
		||||
          editorconfig.editorconfig
 | 
			
		||||
        ]
 | 
			
		||||
        ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [
 | 
			
		||||
          {
 | 
			
		||||
            name = "Sync-Rsync";
 | 
			
		||||
            publisher = "vscode-ext";
 | 
			
		||||
            version = "0.36.0";
 | 
			
		||||
            sha256 = "sha256-0b/OHLZfXo0NAVAVkzZSqMGDzF0uvPRoiqsZtW1iOdA";
 | 
			
		||||
          }
 | 
			
		||||
          # TODO: probably available in nixpkgs soonish?
 | 
			
		||||
          {
 | 
			
		||||
            name = "mypy-type-checker";
 | 
			
		||||
            publisher = "ms-python";
 | 
			
		||||
            version = "2023.3.12681020";
 | 
			
		||||
            sha256 = "sha256-rhed7CQlvxksVCGc9nPU2oYQWtXcAV5TzuG63e8Y3zM=";
 | 
			
		||||
          }
 | 
			
		||||
          {
 | 
			
		||||
            name = "black-formatter";
 | 
			
		||||
            publisher = "ms-python";
 | 
			
		||||
            version = "2023.5.12771008";
 | 
			
		||||
            sha256 = "sha256-lJG0RRUUMhQGs2a6oBtoqt+uY1kSJ0+cbmaP07hNh2o=";
 | 
			
		||||
          }
 | 
			
		||||
          {
 | 
			
		||||
            name = "vscode-pets";
 | 
			
		||||
            publisher = "tonybaloney";
 | 
			
		||||
            version = "1.25.1";
 | 
			
		||||
            sha256 = "sha256-as3e2LzKBSsiGs/UGIZ06XqbLh37irDUaCzslqITEJQ=";
 | 
			
		||||
          }
 | 
			
		||||
        ];
 | 
			
		||||
      userSettings =
 | 
			
		||||
        let
 | 
			
		||||
          defaultPython = pkgs.python3.withPackages (ps: [
 | 
			
		||||
            ps.jedi
 | 
			
		||||
            ps.jedi-language-server
 | 
			
		||||
            ps.pip
 | 
			
		||||
            ps.setuptools # for pkg_resources
 | 
			
		||||
            ps.black
 | 
			
		||||
            ps.mypy
 | 
			
		||||
          ]);
 | 
			
		||||
        in
 | 
			
		||||
        {
 | 
			
		||||
          name = "Sync-Rsync";
 | 
			
		||||
          publisher = "vscode-ext";
 | 
			
		||||
          version = "0.36.0";
 | 
			
		||||
          sha256 = "sha256-0b/OHLZfXo0NAVAVkzZSqMGDzF0uvPRoiqsZtW1iOdA";
 | 
			
		||||
        }
 | 
			
		||||
        # TODO: probably available in nixpkgs soonish?
 | 
			
		||||
        {
 | 
			
		||||
          name = "mypy-type-checker";
 | 
			
		||||
          publisher = "ms-python";
 | 
			
		||||
          version = "2023.3.12681020";
 | 
			
		||||
          sha256 = "sha256-rhed7CQlvxksVCGc9nPU2oYQWtXcAV5TzuG63e8Y3zM=";
 | 
			
		||||
        }
 | 
			
		||||
        {
 | 
			
		||||
          name = "black-formatter";
 | 
			
		||||
          publisher = "ms-python";
 | 
			
		||||
          version = "2023.5.12771008";
 | 
			
		||||
          sha256 = "sha256-lJG0RRUUMhQGs2a6oBtoqt+uY1kSJ0+cbmaP07hNh2o=";
 | 
			
		||||
        }
 | 
			
		||||
        {
 | 
			
		||||
          name = "vscode-pets";
 | 
			
		||||
          publisher = "tonybaloney";
 | 
			
		||||
          version = "1.25.1";
 | 
			
		||||
          sha256 = "sha256-as3e2LzKBSsiGs/UGIZ06XqbLh37irDUaCzslqITEJQ=";
 | 
			
		||||
        }
 | 
			
		||||
      ];
 | 
			
		||||
    userSettings =
 | 
			
		||||
      let
 | 
			
		||||
        defaultPython = pkgs.python3.withPackages (ps: [
 | 
			
		||||
          ps.jedi
 | 
			
		||||
          ps.jedi-language-server
 | 
			
		||||
          ps.pip
 | 
			
		||||
          ps.setuptools # for pkg_resources
 | 
			
		||||
          ps.black
 | 
			
		||||
          ps.mypy
 | 
			
		||||
        ]);
 | 
			
		||||
      in
 | 
			
		||||
      {
 | 
			
		||||
        "editor.fontLigatures" = true;
 | 
			
		||||
        "editor.accessibilitySupport" = false; # prevent asking
 | 
			
		||||
        "editor.cursorBlinking" = "phase";
 | 
			
		||||
        "editor.stickyScroll.enabled" = true;
 | 
			
		||||
        "workbench.editor.highlightModifiedTabs" = true;
 | 
			
		||||
        "window.autoDetectColorScheme" = true;
 | 
			
		||||
        "workbench.preferredDarkColorTheme" = "Default Dark Modern";
 | 
			
		||||
        "workbench.preferredLightColorTheme" = "Default Light Modern";
 | 
			
		||||
        "[nix]" = {
 | 
			
		||||
          "editor.insertSpaces" = true;
 | 
			
		||||
          "editor.tabSize" = 2;
 | 
			
		||||
          # for now, disable automatic formatting to prevent disruption of existing code bases
 | 
			
		||||
          "editor.formatOnPaste" = false;
 | 
			
		||||
          "editor.formatOnSave" = false;
 | 
			
		||||
          "editor.formatOnType" = false;
 | 
			
		||||
          "editor.fontLigatures" = true;
 | 
			
		||||
          "editor.accessibilitySupport" = false; # prevent asking
 | 
			
		||||
          "editor.cursorBlinking" = "phase";
 | 
			
		||||
          "editor.stickyScroll.enabled" = true;
 | 
			
		||||
          "workbench.editor.highlightModifiedTabs" = true;
 | 
			
		||||
          "window.autoDetectColorScheme" = true;
 | 
			
		||||
          "workbench.preferredDarkColorTheme" = "Default Dark Modern";
 | 
			
		||||
          "workbench.preferredLightColorTheme" = "Default Light Modern";
 | 
			
		||||
          "[nix]" = {
 | 
			
		||||
            "editor.insertSpaces" = true;
 | 
			
		||||
            "editor.tabSize" = 2;
 | 
			
		||||
            # for now, disable automatic formatting to prevent disruption of existing code bases
 | 
			
		||||
            "editor.formatOnPaste" = false;
 | 
			
		||||
            "editor.formatOnSave" = false;
 | 
			
		||||
            "editor.formatOnType" = false;
 | 
			
		||||
          };
 | 
			
		||||
          "nix.formatterPath" = lib.getExe pkgs.nixfmt-rfc-style;
 | 
			
		||||
          "nix.enableLanguageServer" = true;
 | 
			
		||||
          "nix.serverPath" = lib.getExe pkgs.nixd;
 | 
			
		||||
          "nix.serverSettings" = { };
 | 
			
		||||
          "editor.fontSize" = 13;
 | 
			
		||||
          "editor.fontWeight" = "normal";
 | 
			
		||||
          "git.detectSubmodulesLimit" = 30;
 | 
			
		||||
          "[python]" = {
 | 
			
		||||
            "breadcrumbs.showClasses" = true;
 | 
			
		||||
            "breadcrumbs.showFunctions" = true;
 | 
			
		||||
            "gitlens.codeLens.symbolScopes" = [ "!Module" ];
 | 
			
		||||
            "editor.defaultFormatter" = "ms-python.black-formatter";
 | 
			
		||||
            "editor.formatOnSave" = true;
 | 
			
		||||
          };
 | 
			
		||||
          "python.languageServer" = "Jedi"; # don't use proprietary pylance server
 | 
			
		||||
          "python.defaultInterpreterPath" = "${defaultPython}/bin/python";
 | 
			
		||||
          "black-formatter.path" = [ "${pkgs.python3Packages.black}/bin/black" ];
 | 
			
		||||
          "black-formatter.importStrategy" = "fromEnvironment";
 | 
			
		||||
          "mypy-type-checker.path" = [ "${pkgs.python3Packages.mypy}/bin/mypy" ];
 | 
			
		||||
          "mypy-type-checker.importStrategy" = "fromEnvironment";
 | 
			
		||||
          "mypy-type-checker.args" = [ "--ignore-missing-imports" ];
 | 
			
		||||
          "gitlens.telemetry.enabled" = false;
 | 
			
		||||
          "vim.highlightedyank.enable" = true;
 | 
			
		||||
          "vim.history" = 500;
 | 
			
		||||
          "vim.neovimUseConfigFile" = true;
 | 
			
		||||
          "vim.enableNeovim" = true;
 | 
			
		||||
          "git.suggestSmartCommit" = false;
 | 
			
		||||
          "editor.rulers" = [ 79 ];
 | 
			
		||||
          "vim.useSystemClipboard" = true;
 | 
			
		||||
          "vim.smartRelativeLine" = true;
 | 
			
		||||
          "diffEditor.ignoreTrimWhitespace" = false;
 | 
			
		||||
          "files.associations" = {
 | 
			
		||||
            "*.py" = "python";
 | 
			
		||||
          };
 | 
			
		||||
          "editor.renderWhitespace" = "all";
 | 
			
		||||
          "editor.fontFamily" = "Iosevka Curly Slab, Menlo, Monaco, 'Courier New', monospace";
 | 
			
		||||
          "vim.neovimPath" = lib.getExe pkgs.myVim;
 | 
			
		||||
          "sync-rsync.options" = [ ];
 | 
			
		||||
          "direnv.path.executable" = lib.getExe pkgs.direnv;
 | 
			
		||||
        };
 | 
			
		||||
        "nix.formatterPath" = lib.getExe pkgs.nixfmt-rfc-style;
 | 
			
		||||
        "nix.enableLanguageServer" = true;
 | 
			
		||||
        "nix.serverPath" = lib.getExe pkgs.nixd;
 | 
			
		||||
        "nix.serverSettings" = { };
 | 
			
		||||
        "editor.fontSize" = 13;
 | 
			
		||||
        "editor.fontWeight" = "normal";
 | 
			
		||||
        "git.detectSubmodulesLimit" = 30;
 | 
			
		||||
        "[python]" = {
 | 
			
		||||
          "breadcrumbs.showClasses" = true;
 | 
			
		||||
          "breadcrumbs.showFunctions" = true;
 | 
			
		||||
          "gitlens.codeLens.symbolScopes" = [ "!Module" ];
 | 
			
		||||
          "editor.defaultFormatter" = "ms-python.black-formatter";
 | 
			
		||||
          "editor.formatOnSave" = true;
 | 
			
		||||
        };
 | 
			
		||||
        "python.languageServer" = "Jedi"; # don't use proprietary pylance server
 | 
			
		||||
        "python.defaultInterpreterPath" = "${defaultPython}/bin/python";
 | 
			
		||||
        "black-formatter.path" = [ "${pkgs.python3Packages.black}/bin/black" ];
 | 
			
		||||
        "black-formatter.importStrategy" = "fromEnvironment";
 | 
			
		||||
        "mypy-type-checker.path" = [ "${pkgs.python3Packages.mypy}/bin/mypy" ];
 | 
			
		||||
        "mypy-type-checker.importStrategy" = "fromEnvironment";
 | 
			
		||||
        "mypy-type-checker.args" = [ "--ignore-missing-imports" ];
 | 
			
		||||
        "gitlens.telemetry.enabled" = false;
 | 
			
		||||
        "vim.highlightedyank.enable" = true;
 | 
			
		||||
        "vim.history" = 500;
 | 
			
		||||
        "vim.neovimUseConfigFile" = true;
 | 
			
		||||
        "vim.enableNeovim" = true;
 | 
			
		||||
        "git.suggestSmartCommit" = false;
 | 
			
		||||
        "editor.rulers" = [ 79 ];
 | 
			
		||||
        "vim.useSystemClipboard" = true;
 | 
			
		||||
        "vim.smartRelativeLine" = true;
 | 
			
		||||
        "diffEditor.ignoreTrimWhitespace" = false;
 | 
			
		||||
        "files.associations" = {
 | 
			
		||||
          "*.py" = "python";
 | 
			
		||||
        };
 | 
			
		||||
        "editor.renderWhitespace" = "all";
 | 
			
		||||
        "editor.fontFamily" = "Iosevka Curly Slab, Menlo, Monaco, 'Courier New', monospace";
 | 
			
		||||
        "vim.neovimPath" = lib.getExe pkgs.myVim;
 | 
			
		||||
        "sync-rsync.options" = [ ];
 | 
			
		||||
        "direnv.path.executable" = lib.getExe pkgs.direnv;
 | 
			
		||||
      };
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -89,7 +89,7 @@ in
 | 
			
		|||
    };
 | 
			
		||||
 | 
			
		||||
  # some extra shell scripts
 | 
			
		||||
  programs.zsh.initExtra = lib.mkAfter (
 | 
			
		||||
  programs.zsh.initContent = lib.mkAfter (
 | 
			
		||||
    import ./scripts/reporsync.nix { inherit pkgs lib; }
 | 
			
		||||
    + import ./scripts/ssh-loop-fc.nix { inherit pkgs lib; }
 | 
			
		||||
  );
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,26 @@
 | 
			
		|||
From 362c2bc76d359b908ad1389ee28c23ee0e862324 Mon Sep 17 00:00:00 2001
 | 
			
		||||
From: Ihar Hrachyshka <ihar.hrachyshka@gmail.com>
 | 
			
		||||
Date: Mon, 7 Apr 2025 21:03:09 -0400
 | 
			
		||||
Subject: [PATCH] nodejs_20: fix test failure on darwin on latest MacOS 15.4
 | 
			
		||||
 | 
			
		||||
Signed-off-by: Ihar Hrachyshka <ihar.hrachyshka@gmail.com>
 | 
			
		||||
(cherry picked from commit 9674c1f688d12b99fbde26e6068ab62609fef3b1)
 | 
			
		||||
---
 | 
			
		||||
 pkgs/development/web/nodejs/v20.nix | 5 +++++
 | 
			
		||||
 1 file changed, 5 insertions(+)
 | 
			
		||||
 | 
			
		||||
diff --git a/pkgs/development/web/nodejs/v20.nix b/pkgs/development/web/nodejs/v20.nix
 | 
			
		||||
index b9c9345c441afa..20cceb5b5d1cda 100644
 | 
			
		||||
--- a/pkgs/development/web/nodejs/v20.nix
 | 
			
		||||
+++ b/pkgs/development/web/nodejs/v20.nix
 | 
			
		||||
@@ -50,5 +50,10 @@ buildNodejs {
 | 
			
		||||
       stripLen = 1;
 | 
			
		||||
       hash = "sha256-6y3aEqxNC4iTQEv1oewodJrhOHxjp5xZMq1P1QL94Rg=";
 | 
			
		||||
     })
 | 
			
		||||
+    # fix test failure on macos 15.4
 | 
			
		||||
+    (fetchpatch2 {
 | 
			
		||||
+      url = "https://github.com/nodejs/node/commit/33f6e1ea296cd20366ab94e666b03899a081af94.patch?full_index=1";
 | 
			
		||||
+      hash = "sha256-aVBMcQlhQeviUQpMIfC988jjDB2BgYzlMYsq+w16mzU=";
 | 
			
		||||
+    })
 | 
			
		||||
   ] ++ gypPatches;
 | 
			
		||||
 }
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue