After Screen Lock, inputting password gets me to a black screen with functional cursor

A couple weeks ago, I went to my computer (which I’d left open overnight, as I often do) and input my password. Instead of getting back into my DE, I was faced with a black screen and a functional cursor.

From that black screen, I can use Ctrl+Alt+F2 to get into a terminal login screen and return to my DE using startx, but if I do that my Lock Screen function doesn’t work anymore.

I thought it may have been the Suspend function, but just yesterday I used Lock Screen and then deactivated the screensaver two seconds later, input my password, and got the black screen anyway.

Still on 6.1.69-1, should I jump to 6.6.8-2 and see if that helps before I try fixing this? Or is it more prudent to figure out what may be wrong before switching kernels?

Assuming your system is up to date and all

sudo pacman -Syu

Its probably worthwhile to see if different kernels function differently, and they are easy to install and select.

2 reboots and you can know.

If not… lets see about system info:

inxi -Fazy

And pacnews… to print them:

pacdiff -o

I always have so many things open, it’s actually a bit of a hassle to reboot and reopen everything, but as I’m trying to fix things right now I’m OK with it.

Changing kernels did not fix anything. I still get the black screen after using Lock Screen.

You talked about “pacnews” in the other thread. What are they?

This is what “pacdiff -o” returned:


Obviously I wouldn’t be able to tell you if those results are normal or not.

…and you are wondering, why you have problems?

On a well-kept system it should return nothing.

Should probably be ignored, at least for now.

But the rest include important changes and related packages. Including

To understand what they are heres manjaro and arch links respectively:

I recently did a quick type-up of how I would handle them;

An example would be /etc/pacman.conf and /etc/pacman.conf.pacnew.
Almost certainly this pacnew file is to reflect the removal of the [community] repo.
So the pacnew will have the entry missing in comparison to the file on the system.
You would want to edit your file to reflect that.

A pacsave is pretty much the opposite.
The change was forced, with the updated file taking place.
But your original file with your original configurations are preserved in the pacsave file.
You compare them just the same. But in this case you are trying to ‘add back in’ your own configurations if applicable.
(in your case this only applies to /usr/share/icons/default/index.theme.pacsave)

1 Like

Yes, of course I’m wondering why I have problems. I’m just a normal person. I’ve literally never heard of these “pacnews” or this pacdiff command before today. There was nothing about checking for those regularly anywhere in what little user information I got after installing the OS, or in any tutorials I’ve seen online about setting Linux up properly. They’ll all tell you to install the same stuff, to enable TRIM and all that basic stuff, but I’ve never heard any of them talk about pacnews. If most Linux users know about this, where would they have heard about it? If I missed some mandatory Linux introduction video or something, I would like to know about it.

Ah. Well that’s not good.

This says .pacnew files are created during package updates, so I’m guessing I should do a “pacdiff -o” check right after every major update to make sure nothing went wrong?

I did not have Meld installed. I have now installed v3.22.0-2.

Following your instructions, pacdiff -s does not run. I get:

==> ERROR: Cannot find the vim -d binary required for viewing differences.

Maybe after all that other stuff I need another reboot. I’ll be back in a moment. EDIT: OK, I’m back and it works now.

They would be printed during update every time they are created.

There are also extra hooks and things if you want them.

Including manjaro-pacnew-checker which is actually a ‘more friendly gui’ for handling pacnews and a hook that will run when required by updates:

extra/manjaro-pacnew-checker 0.5.4-1 [27.68 KiB 74.42 KiB]
    Simple checker for pacnew/pacsave files and manage it

And other packages like this AUR one that is really just the hook:

aur/pacdiff-pacman-hook-git r81.9d5f298-1 [+13 ~2.60]
   Pacman hook to review .pacnew files automatically

It would seem you skipped the part where you set the DIFFPROG variable and/or the part where you source the environment file.
Assuming the configuration has been set but is somehow not recognized, then a logout/login or reboot should work.

As with all environment variables you can also (temporarily) define it on the command line:

DIFFPROG=/usr/bin/meld pacdiff -s

A friendly note:

pacnew/pacsave/etc is admittedly probably one of the most difficult things to do to maintain an Arch/Manjaro install, especially for new or casual users.

The good news is;

  • They really arent as scary as they seem at first. Promise.
  • When they are managed they only come a few at a time every once in a while. ~ a few a year.
  • Once you become familiar with them you may actually begin to admire the robustness of the updates along with continual honoring of user configurations that is provided by the model.

I have never seen that. When I install updates, it either tells me my computer is up to date or that I need a Restart before some of the changes will take effect. Nothing more.

I did not, and indeed, a reboot did work.

So basically… the .conf files need the changes found in the .pacnew files, while the .pacsave files are backups of my original file (and thus most likely outdated).

So I modify .conf files using information I find in the .pacnew files, and the .pacsave files don’t really matter unless I really want to get some of my old settings back (which I’m not sure I’d recognize anyway), right?

Maybe it does matter. The first one I’m shown is called “icon theme”, and I do have a bug where some of my icons on my panel aren’t displaying properly (they are of a single solid color). It’s been that way for a couple years. Apparently my old one (in the .pacsave file) was “xcursor-breeze” and the new one is “Adwaita”. Maybe reverting to “xcursor-breeze” would fix the issue? It’s not important right now, I’ll check on that later.

Right now I’m trying to figure out how to see the other ones. That .pacsave file is the only one Meld is showing me.

Easy enough to check :wink:
But yes and no … no just because I doubt this cursor definition is affecting your other icons.

If you opened it (in meld) then close it.
On the pacdiff prompt hit s to skip it … and you should be presented with the next file.

1 Like


(remember having to teach the whole Stable Update thread about pacnews)
PTSD engaged :woozy_face:

Sorry for the OT, but I am taking a short break. cheerios.

Now that I know about them, and that I can shoot them down one by one as they appear, I imagine you’re very much correct.

I did not know that this System Maintenance page even existed, and while I’ve looked at announcements once in a while when an update seemed to be breaking things or require some manual intervention, I do not recall reading anything about .pacnew files in any of the threads that dealt with those problems.

I am not infallible and it’s possible I missed a mention or two in the clutter… but it really seems to me like a large percentage of the userbase would simply not know about .pacnew files. As ignorant as I am in these matters, it has been my experience that most other people know even less.

But who knows. Things are changing. Computers were still new when I was young. I was one of the few people to have one (I had an XT, then an AT). But now kids carry computers with cameras in their pockets. Maybe their brains are just better suited at handling technological matters than mine is.

Oh, I see. It finds one file, then asks me what I want to do with it. I have to repeat the process and skip old ones to get to the new ones.

Thank you very much for all your help. With this new information, I will be better prepared to prevent (or deal with) issues in the future.

I’ll drop this here, as I’m not certain it’s been absolutely clarified.

The .pacnew files should be merged with the content of the existing files, and should not replace the content.

Yes, this should seem obvious, I suppose, however, some don’t seem to understand the significance. A .pacnew file often contains updated and/or recommended information, which may sometimes conflict with desired settings.

This will often require that you so some research to find out exactly how each item of the proposed merge might affect your particular environment.

Just my 2 cents. Spend it wisely. Cheers.


Hrm… sometimes Meld seems to think that the .pacnew content should be added, and sometimes it seems to think that it should replace similar (but slightly different and presumably outdated) content in the .conf file. There have been a few instances where I did just that.

I hope I didn’t screw anything up. Most of the changes just seemed to be update to the comments, a few additional options and the like. But there was a GRUB file in there and I know that’s one of the worst places to break things.

There was a place I almost left the lines in (the one with [community]) but I was instructed earlier to specifically remove that one.

There was another that wanted to change the default file system from ext4 to btrfs? I didn’t dare change that one, but maybe I should?

I guess we’ll see… if everything breaks, then I’ll know I have made a terrible mistake somewhere.

Sometimes I think I’m in way over my head. Linux just doesn’t seem to be made for normal people, but at the same time it’s the last usable OS so it’s not like I have any choice (aside from giving computers up entirely, which in this day and age would be very difficult). I really wish the updater was just a bit smarter here, and replace the things it knows it has to replace while leaving people’s settings intact.

UPDATE: so the computer reboots just fine so I didn’t break GRUB. And while I hate to name myself… unfortunately, the “black screen with cursor” issue remains.

A responsible rule-of-thumb is simply this:

If you don’t understand how replacing any part of a file might affect your system, then skip that file until you’ve done some more homework.

Community was a no-brainer, as is said. The repo no longer exists, remove it.

Other pacnews, however, might have serious ramifications if you mess it up; usually recoverable; but, it does highlight the importance of caution.

BTRFS is apparently an excellent filesystem, with many advantages; however, not too many use it (I don’t). EXT4 is more than sufficient for most use cases, and it’s easier to manage.

Arch-based distributions such as Manjaro (being a rolling release) require more attention, generally; frequent updates and changes are just part of the deal.

We are all normal people (most of us), and we all came from something else before Linux. If you’re prepared to learn, you’ll reap the benefits.

So-called point release distributions, such as Debian (rock solid OS), have a different release cycle. Each major release is 2 years apart, with a few minor updates in between. You still need to understand and maintain your OS, but not as often.

Well, if you created a separate /home partition during install (using the manual partitioning method), that makes life easier, as you could do a full reinstall while leaving your home partition in tact.

Linux; it’s a journey. Cheers.

Meld doesnt know anything about pacnews or what ‘should’ be anywhere.
Its simply a comparison tool.
Which has been opened by pacdiff to help you manage the comparisons of pacnews and similar.
Any highlights, etc, that it shows are simply the mechanisms of showing the differences of the files.
Its up to you to compare, make changes, save, etc. Be aware of the filenames.

Now that you’ve done that please get rid of the old db;

sudo pacman -Sc

(removing the uninstalled cache is optional, but respond Y to removing unused repos)

Then sync+update again

sudo pacman -Syu

Assuming everything is updated and as it should be … now lets check on lightlocker;

Is the autostart file there?

ls -a /etc/xdg/autostart/

Or maybe in home?

ls -a ~/.config/autostart

And maybe check if its running

ps -ef | grep light-locker

If those seem to show it running then it should work;

light-locker-command -l

But we are here because it doesnt so … please report whatever oddities or errors.

D’oh, and we might still find general system information useful:

inxi -Fazy

warning: sndio: local (20180120-1) is newer than extra (1.9.0-1)
there is nothing to do

The etc/xdg/autostart line revealed a “light-locker.desktop” file.

Checking if it’s running, uh…

USERNAME 954 804 0 00:24 ? 00:00:00 light-locker
USERNAME 6274 6147 0 01:02 pts/0 00:00:00 grep --colour=auto light-locker

With “light-locker” being in RED. I’m guessing that’s not a good thing.

Running that last command yields:

** Message: 01:04:58.539: Received error message from the locker: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.ScreenSaver was not provided by any .service files

I don’t know if that’s informative regarding the source of the issue, but it might be?

Edit: ah, system info. Yes.

  Kernel: 6.6.8-2-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 13.2.1
    clocksource: tsc available: hpet,acpi_pm
    parameters: BOOT_IMAGE=/boot/vmlinuz-6.6-x86_64
    root=UUID=44c2f76f-7ed8-4eec-b84a-a712d686b73d rw quiet
  Desktop: Xfce v: 4.18.1 tk: Gtk v: 3.24.36 info: xfce4-panel wm: xfwm
    v: 4.18.0 vt: 2 dm: LightDM v: 1.32.0 Distro: Manjaro Linux base: Arch Linux
  Type: Desktop Mobo: Micro-Star model: H370 GAMING PLUS (MS-7B22) v: 2.0
    serial: <superuser required> UEFI-[Legacy]: American Megatrends v: 1.10
    date: 02/24/2018
  Info: model: Intel Core i5-8400 bits: 64 type: MCP arch: Coffee Lake
    gen: core 8 level: v3 note: check built: 2018 process: Intel 14nm family: 6
    model-id: 0x9E (158) stepping: 0xA (10) microcode: 0xF4
  Topology: cpus: 1x cores: 6 smt: <unsupported> cache: L1: 384 KiB
    desc: d-6x32 KiB; i-6x32 KiB L2: 1.5 MiB desc: 6x256 KiB L3: 9 MiB
    desc: 1x9 MiB
  Speed (MHz): avg: 800 min/max: 800/4000 scaling: driver: intel_pstate
    governor: powersave cores: 1: 800 2: 800 3: 800 4: 800 5: 800 6: 800
    bogomips: 33613
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
  Type: gather_data_sampling mitigation: Microcode
  Type: itlb_multihit status: KVM: VMX disabled
  Type: l1tf mitigation: PTE Inversion; VMX: conditional cache flushes, SMT
  Type: mds mitigation: Clear CPU buffers; SMT disabled
  Type: meltdown mitigation: PTI
  Type: mmio_stale_data mitigation: Clear CPU buffers; SMT disabled
  Type: retbleed mitigation: IBRS
  Type: spec_rstack_overflow status: Not affected
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
  Type: spectre_v2 mitigation: IBRS, IBPB: conditional, STIBP: disabled, RSB
    filling, PBRSB-eIBRS: Not affected
  Type: srbds mitigation: Microcode
  Type: tsx_async_abort status: Not affected
  Device-1: NVIDIA GP106 [GeForce GTX 1060 6GB] vendor: Micro-Star MSI
    driver: nvidia v: 545.29.06 alternate: nouveau,nvidia_drm non-free: 545.xx+
    status: current (as of 2023-11; EOL~2026-12-xx) arch: Pascal code: GP10x
    process: TSMC 16nm built: 2016-2021 pcie: gen: 3 speed: 8 GT/s lanes: 16
    bus-ID: 01:00.0 chip-ID: 10de:1c03 class-ID: 0300
  Display: x11 server: v: compositor: xfwm v: 4.18.0 driver:
    X: loaded: nvidia gpu: nvidia display-ID: :1.0 screens: 1
  Screen-1: 0 s-res: 1920x1200 s-size: <missing: xdpyinfo>
  Monitor-1: Unknown-1 mapped: DVI-D-0 res: 1920x1200 hz: 60 dpi: 89
    size: 550x343mm (21.65x13.5") modes: 1920x1200
  API: EGL v: 1.5 hw: drv: nvidia platforms: device: 0 drv: nvidia device: 2
    drv: swrast gbm: drv: kms_swrast surfaceless: drv: nvidia x11: drv: nvidia
    inactive: wayland,device-1
  API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: nvidia mesa v: 545.29.06
    glx-v: 1.4 direct-render: yes renderer: NVIDIA GeForce GTX 1060 6GB/PCIe/SSE2
    memory: 5.86 GiB
  API: Vulkan v: 1.3.274 layers: 5 device: 0 type: discrete-gpu name: NVIDIA
    GeForce GTX 1060 6GB driver: nvidia v: 545.29.06 device-ID: 10de:1c03
    surfaces: xcb,xlib
  Device-1: Intel Cannon Lake PCH cAVS vendor: Micro-Star MSI
    driver: snd_hda_intel v: kernel alternate: snd_soc_skl,snd_sof_pci_intel_cnl
    bus-ID: 00:1f.3 chip-ID: 8086:a348 class-ID: 0403
  Device-2: NVIDIA GP106 High Definition Audio vendor: Micro-Star MSI
    driver: snd_hda_intel v: kernel pcie: gen: 3 speed: 8 GT/s lanes: 16
    bus-ID: 01:00.1 chip-ID: 10de:10f1 class-ID: 0403
  API: ALSA v: k6.6.8-2-MANJARO status: kernel-api with: aoss
    type: oss-emulator tools: alsactl,alsamixer,amixer
  Server-1: sndiod v: N/A status: off tools: aucat,midicat
  Server-2: JACK v: 1.9.22 status: off tools: N/A
  Server-3: PipeWire v: 1.0.0 status: off tools: pw-cli
  Server-4: PulseAudio v: 16.1 status: active with: 1: pulseaudio-alsa
    type: plugin 2: pulseaudio-jack type: module tools: pacat,pactl,pavucontrol
  Device-1: Intel Ethernet I219-V vendor: Micro-Star MSI driver: e1000e
    v: kernel port: N/A bus-ID: 00:1f.6 chip-ID: 8086:15bc class-ID: 0200
  IF: eno1 state: up speed: 1000 Mbps duplex: full mac: <filter>
  Local Storage: total: 11.38 TiB used: 5.05 TiB (44.4%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/sda maj-min: 8:0 vendor: Samsung model: SSD 860 PRO 512GB
    size: 476.94 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
    tech: SSD serial: <filter> fw-rev: 1B6Q scheme: MBR
Bunch of HDD info
  ID-1: / raw-size: 459.76 GiB size: 451.47 GiB (98.20%)
    used: 371.76 GiB (82.3%) fs: ext4 dev: /dev/sda1 maj-min: 8:1
  Kernel: swappiness: 60 (default) cache-pressure: 100 (default) zswap: yes
    compressor: zstd max-pool: 20%
  ID-1: swap-1 type: partition size: 17.17 GiB used: 0 KiB (0.0%)
    priority: -2 dev: /dev/sda2 maj-min: 8:2
  System Temperatures: cpu: 32.0 C pch: 29.0 C mobo: N/A
  Fan Speeds (rpm): N/A
  Processes: 254 Uptime: 43m wakeups: 0 Memory: total: 16 GiB
  available: 15.57 GiB used: 3.15 GiB (20.2%) Init: systemd v: 254
  default: graphical tool: systemctl Compilers: gcc: 13.2.1 clang: 16.0.6
  Packages: pm: pacman pkgs: 1556 libs: 533 tools: pamac,yay Shell: Bash
  v: 5.2.21 running-in: xfce4-terminal inxi: 3.3.31

The computer is a bit over five years old, but it has decent enough components which are still plenty for my needs.

Might be indeed.
The problem here is that file is not provided by any package.
The closest but still not exact is

extra/kscreenlocker 5.27.10-1 (plasma)

(which is also for kde)

So now the question becomes why is light-locker looking for that file ?

Can we check some things;

All installed foreign packages

pacman -Qmq

List all installed packages having to do with light, lock, or screensave;

pacman -Qsq 'light|lock|screensav'

Foreign packages:


All installed packages having to do with light, lock, or screensave:



Tip: If you place those loooong boxes between 3 backticks ``` (top and bottom), that will create a scrollable preformatted text box, and keep it tidy.