Terminal, browser and file explorer launch on boot, how do I stop this

my config:

# Start of graphics config

  hardware.opengl = {
    enable = true;
  };

  services.xserver = {
    enable = true;
    libinput.enable = true;
    displayManager.sddm.enable = true;
    desktopManager.plasma6.enable = true;
  };  

  nixpkgs.config.allowUnfree = true;
  services.xserver.videoDrivers = [ "nvidia" ];
  
  hardware.graphics = {
    enable = true; 
  };

  hardware.graphics.extraPackages = with pkgs; [
    intel-vaapi-driver
    intel-media-driver];

  hardware.nvidia = {
   modesetting.enable = true;
   powerManagement.enable = false;
   open = false;
   nvidiaSettings = true;
   package = config.boot.kernelPackages.nvidiaPackages.stable;
  };

  boot.kernelParams = ["i915.force_probe=7d55"];

  hardware.nvidia.prime = {
    sync.enable = true;
    nvidiaBusId = "PCI:1:0:0";
    intelBusId = "PCI:0:2:0";
  };

  # End of graphics config

  # Start of audio config

  #  hardware.pulseaudio.enable = true;
  #  hardware.pulseaudio.support32Bit = true;

  services.pipewire = {
    enable = true;
    pulse.enable  = true;
    alsa.enable = true;
    alsa.support32Bit = true;
  };
  security.rtkit.enable = true;

  # End of audio config

  # Start of packages/applications  config

  environment.systemPackages = with pkgs; [
    vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
    wget
    fastfetch
    alacritty
    lshw
    pciutils
    nvitop
    brave
    rtkit
    plasma-pa
    whitesur-kde
    whitesur-icon-theme
    legcord
    firefox
    spotify
    libreoffice-qt6-fresh
    git
    gcc
    jdk23
    alacritty-theme
    gnomeExtensions.toggle-alacritty
    neofetch
    vscode
  ];

  programs.neovim = {
    enable = true;
    defaultEditor = true;
  };

  programs.steam.enable = true;
  programs.thunderbird.enable = true;

  programs.virt-manager.enable = true;
  users.groups.libvirtd.members = ["francis"];
  virtualisation.libvirtd.enable = true;
  virtualisation.spiceUSBRedirection.enable = true;

  # End of packages/applications config

  # Start of NixOS version config

  # This option defines the first version of NixOS you have installed on this particular machine,
  # and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions.
  #
  # Most users should NEVER change this value after the initial install, for any reason,
  # even if you've upgraded your system to a new NixOS release.
  #
  # This value does NOT affect the Nixpkgs version your packages and OS are pulled from,
  # so changing it will NOT upgrade your system - see https://nixos.org/manual/nixos/stable/#sec-upgrading for how
  # to actually do that.
  #
  # This value being lower than the current NixOS release does NOT mean your system is
  # out of date, out of support, or vulnerable.
  #
  # Do NOT change this value unless you have manually inspected all the changes it would make to your configuration,
  # and migrated your data accordingly.
  #
  # For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion .
  system.stateVersion = "24.11"; # Did you read the comment?

  # End of NixOS version config

  # Start of boot config

  boot.loader.grub.device = "nodev";
  boot.loader.grub.enable = true;
  boot.loader.efi.canTouchEfiVariables = true;
  boot.loader.grub.useOSProber = true;
  boot.loader.grub.efiSupport = true;
  boot.loader.efi.efiSysMountPoint = "/boot";
  boot.loader.systemd-boot.enable = false;

  # End of boot config

  users.users.francis = {
    isNormalUser = true;
    description = "Francis";
    extraGroups = [ "wheel" ];
    shell = pkgs.bash;
    home = "/home/francis";
  };
 
  xdg.portal = {
    enable = true;
    wlr.enable = true;
  };

  swapDevices = [{
    device = "/swapfile";
    size = 16 * 1024;
  }];

  imports =
    [ # Include the results of the hardware scan.
      ./hardware-configuration.nix
    ];

  # Configure x11 keymap

  services.xserver.xkb.layout = "us";

  # services.xserver.xkb.options = "eurosign:e,caps:escape";

  # Enable CUPS to print documents.
  # services.printing.enable = true;
  
  # Enable touchpad support (enabled default in most desktopManager).
  # services.libinput.enable = true;

  # Define a user account. Don't forget to set a password with ‘passwd’.
  #  users.users.francis = {
  #   isNormalUser = true;
  #   extraGroups = [ "wheel" ]; # Enable ‘sudo’ for the user.
  #   packages = with pkgs; [
  #     tree
  #   ];
  #  };

  # List packages installed in system profile. To search, run:
  # $ nix search wget

  # Some programs need SUID wrappers, can be configured further or are
  # started in user sessions.
  # programs.mtr.enable = true;
  # programs.gnupg.agent = {
  #   enable = true;
  #   enableSSHSupport = true;
  # };

  # Copy the NixOS configuration file and link it from the resulting system
  # (/run/current-system/configuration.nix). This is useful in case you
  # accidentally delete configuration.nix.
  # system.copySystemConfiguration = true;

  # Set your time zone.
  # time.timeZone = "Europe/Amsterdam";
 
}

I don’t mind terminal starting on boot but not the other 2, anyone got any ideas?

What is in your ~/.config/autostart/ folder?

nothing
this sentance is here to fill the 20 word minimum.

I‘m not using Plasma but could it be that it is restoring the previous session?

https://www.reddit.com/r/kde/comments/1gh2rr7/programms_run_on_startup/?rdt=55659

There is also /run/current-system/sw/etc/xdg/autostart and /etc/profiles/per-user/<user>/etc/xdg/autostart.
To be sure, check the full list:
find `echo $XDG_CONFIG_DIRS | tr ':' ' '` -name autostart

1 Like