LinuxQuestions.org
Help answer threads with 0 replies.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 05-27-2017, 05:14 AM   #46
GazL
LQ Veteran
 
Registered: May 2008
Posts: 6,897

Rep: Reputation: 5018Reputation: 5018Reputation: 5018Reputation: 5018Reputation: 5018Reputation: 5018Reputation: 5018Reputation: 5018Reputation: 5018Reputation: 5018Reputation: 5018

XDG is a user centric desktop spec. NM is clearly designed to be a component of a desktop but it's being run here in the role of a system-wide network interface management daemon. XDG should have no role in the operation of system daemons, in the UI control applets run by their users certainly, but not the backend daemons themselves.

It's much the same issue as pulseaudio, which also fails to respect the separation between user desktop component and system-daemon. IMO it's just architecturally flawed design and a very non UNIXish way of going about things.

If a daemon needs to store state, cache files etc, then there are locations in the /var hierarchy designed to cater to that need.

Last edited by GazL; 05-27-2017 at 06:02 AM. Reason: speeling ;)
 
3 members found this post helpful.
Old 05-27-2017, 05:25 AM   #47
chris.willing
Member
 
Registered: Jun 2014
Location: Brisbane, Australia
Distribution: Slackware,LFS
Posts: 914

Rep: Reputation: 619Reputation: 619Reputation: 619Reputation: 619Reputation: 619Reputation: 619
Quote:
Originally Posted by Didier Spaier View Post
...
PPS I just checked: when /etc/rc/d.rc.M starts rc.networkmanager, $HOME is set to "/". I have no idea on why nor what sets it, but that sounds weird as POSIX states:
Code:
HOME
    The system shall initialize this variable at the time of login to be a pathname of the user's home directory. See <pwd.h>.
But as nobody is logged in when rc.M starts rc.networkmanager, why is HOME already set?
...
I think the twist is that at this point (while running boot scripts) root hasn't actually logged in - at least not in the way that anyone logs in as root once the system is up & running. Therefore that instance of root that's running the boot scripts hasn't (I presume) sourced /etc/profile etc., to obtain a normal environment. In this case, it's sort of understandable that root's "home" is /. What should it be without having been allocated a home directory elsewhere? At least / is guaranteed to be there.

Consider also the case of an ordinary user whose allocated home directory is not available at login time for some reason (unavailable nfs mounted home directory springs to mind); in that case the use is logged into /. To my mind, this is just like root at boot time with no home directory set.

chris

Last edited by chris.willing; 05-27-2017 at 05:29 AM.
 
Old 05-27-2017, 06:12 AM   #48
Didier Spaier
LQ Addict
 
Registered: Nov 2008
Location: Paris, France
Distribution: Slint64-15.0
Posts: 11,056

Rep: Reputation: Disabled
Just wondering what would happen in case HOME be not set at all then. Maybe I'll unset it early in the startup sequence just to see what happens. In a VM, not to break my real systems.
 
Old 05-27-2017, 07:49 AM   #49
gmgf
Senior Member
 
Registered: Jun 2012
Location: Bergerac, France
Distribution: Slackware
Posts: 2,205

Rep: Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997Reputation: 997
Just, for info, i have one other install of slack-current on other partition, with openrc, doesn't /.cache appears, it seem the networkmanager service in open rc service start with timeout, But I do not know if this is the problem.
 
Old 05-27-2017, 08:42 AM   #50
burdi01
Member
 
Registered: Dec 2010
Location: The Netherlands
Distribution: Slackware Current64, PartedMagic, Xubuntu
Posts: 465

Original Poster
Rep: Reputation: 114Reputation: 114
As the discussion in this thread shows, NetworkManager (NM for short) expects XDG_CACHE_HOME to be set. As NM is started at boot (in rc.M) this implies that it expects this "user" setting to be set when no user is logged in yet.
For as far as I am aware NM is developed and tested on the systemd side of the house. Maybe systemd sets those "user" settings at boot, reasoning that as root is the owner of the system he is the implicit user at boot. If that is the case chances are that more applications will now or in the future tacitly assume the "user" settings to be set at boot.
To prevent future "surprises" it might be cautious to set those XDG "user" settings and/or e.g. $HOME as for root at boot (in rc.M or even in rc.S).

I know I am "cursing in the church", please do not shoot me.

Last edited by burdi01; 05-27-2017 at 08:56 AM.
 
Old 05-27-2017, 09:15 AM   #51
kjhambrick
Senior Member
 
Registered: Jul 2005
Location: Round Rock, TX
Distribution: Slackware64 15.0 + Multilib
Posts: 2,159

Rep: Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512
While I agree with your analysis burdi01, such assumptions during boot sound Scary and Dangerous to me.

I wonder what are the chances of the new generation of ex-Windows programmers, now doing Linux Code, learning that Linux is not Windows and that my Servers are not your LapTop, etc, etc, etc ...

-- kjh( imo, slim to none )
 
2 members found this post helpful.
Old 05-27-2017, 09:59 AM   #52
Didier Spaier
LQ Addict
 
Registered: Nov 2008
Location: Paris, France
Distribution: Slint64-15.0
Posts: 11,056

Rep: Reputation: Disabled
Quote:
Originally Posted by burdi01 View Post
For as far as I am aware NM is developed and tested on the systemd side of the house.
No. But they can coexist as stated by LP himself:
Quote:
Or if you don’t want to use some of the more modern components like Networkd, then use something else. I mean, on my laptop I even use NetworkManager, because Networkd doesn’t do wireless, right? Networkd is more for containers and servers. So if you want to adopt Systemd, you can absolutely adopt the baseline, which is the three components that I mentioned. You can keep the rest of the system – however, our implementation of the individual parts is usually pretty convincing, and usually people then replace more.
On a similar topic, in this intesting thread:
Quote:
The current version of NetworkManager offers the NetworkManager-wait-online.service which gets pulled in by network-online.target and thus by your service. This special service ensures that your service will wait until all connections configured to be started automatically succeed, fail, or time out.

The current version of systemd-networkd blocks your service until all devices are configured as requested. It is easier in that it currently only supports configurations that are applied at boot time (more specifically the startup time of `systemd-networkd.service).
See also this page to know how that's handled with systemd.

Bottom line: Of course Fedora and Slackware handle starting NetworkManager in different fashions, but that is basically the same application, I assume.

Last edited by Didier Spaier; 05-27-2017 at 10:06 AM.
 
1 members found this post helpful.
Old 06-01-2017, 04:58 PM   #53
Didier Spaier
LQ Addict
 
Registered: Nov 2008
Location: Paris, France
Distribution: Slint64-15.0
Posts: 11,056

Rep: Reputation: Disabled
Quote:
Originally Posted by Didier Spaier View Post
Just wondering what would happen in case HOME be not set at all then. Maybe I'll unset it early in the startup sequence just to see what happens. In a VM, not to break my real systems.
Well HOME is set to / as soon as the system starts. Having seen that HOME is already set to / at the beginning of /etc/rc.d/rc.S, at first I thought that it was done by some userland program, like bash or login. But eventually I saw this line in the kernel source (file init/main.c):
Code:
const char *envp_init[MAX_INIT_ENVS+2] = { "HOME=/", "TERM=linux", NULL, };
So when the system is initialized HOME is set to /.

A see a similar thing in kernel/reboot.c
Code:
static int run_cmd(const char *cmd)
{
    char **argv;
    static char *envp[] = {
        "HOME=/",
        "PATH=/sbin:/bin:/usr/sbin:/usr/bin",
        NULL
    };
    int ret;
    argv = argv_split(GFP_KERNEL, cmd, NULL);
    if (argv) {
        ret = call_usermodehelper(argv[0], argv, envp, UMH_WAIT_EXEC);
        argv_free(argv);
    } else {
        ret = -ENOMEM;
    }

    return ret;
}
This function is executed before rebooting or shutting down the system.

What puzzles me is that if I unset HOME at the beginning of rc.S (which has no immediate obvious nasty consequence, by the way), when rc.M starts HOME is again set as /. Any idea why, anyone?

PS Maybe this is something similar to any variable setting in the command line automatically "exported" system wide?

Last edited by Didier Spaier; 06-01-2017 at 06:27 PM. Reason: PS added
 
Old 06-01-2017, 08:13 PM   #54
volkerdi
Slackware Maintainer
 
Registered: Dec 2002
Location: Minnesota
Distribution: Slackware! :-)
Posts: 2,500

Rep: Reputation: 8453Reputation: 8453Reputation: 8453Reputation: 8453Reputation: 8453Reputation: 8453Reputation: 8453Reputation: 8453Reputation: 8453Reputation: 8453Reputation: 8453
Quote:
Originally Posted by Didier Spaier View Post
What puzzles me is that if I unset HOME at the beginning of rc.S (which has no immediate obvious nasty consequence, by the way), when rc.M starts HOME is again set as /. Any idea why, anyone?

PS Maybe this is something similar to any variable setting in the command line automatically "exported" system wide?
Within rc.S all you can do is unset or change the value of $HOME within the scope of rc.S. It's already been defined at a higher shell level, so that's where rc.M gets the value from. Similarly, any other variable you define within rc.S will only be available there (or, if exported, there and in any subshells of rc.S). Set something like BOGUS_VARIABLE=foo in rc.S (and export it) and then try to echo it in rc.M and it won't be set, because rc.M is not a subshell of rc.S.
 
4 members found this post helpful.
Old 06-01-2017, 10:37 PM   #55
Didier Spaier
LQ Addict
 
Registered: Nov 2008
Location: Paris, France
Distribution: Slint64-15.0
Posts: 11,056

Rep: Reputation: Disabled
Quote:
Originally Posted by volkerdi View Post
Within rc.S all you can do is unset or change the value of $HOME within the scope of rc.S. It's already been defined at a higher shell level, so that's where rc.M gets the value from. Similarly, any other variable you define within rc.S will only be available there (or, if exported, there and in any subshells of rc.S). Set something like BOGUS_VARIABLE=foo in rc.S (and export it) and then try to echo it in rc.M and it won't be set, because rc.M is not a subshell of rc.S.
That makes sense, thanks for the clear explanation.

Last edited by Didier Spaier; 06-01-2017 at 10:40 PM.
 
Old 04-15-2018, 04:00 AM   #56
burdi01
Member
 
Registered: Dec 2010
Location: The Netherlands
Distribution: Slackware Current64, PartedMagic, Xubuntu
Posts: 465

Original Poster
Rep: Reputation: 114Reputation: 114
/.cache is back

Current64: The empty /.cache directory is back ...
I do not know since when though ...
Re-enabled the "rm -Rf" in /etc/rc.d/rc.local ...

Last edited by burdi01; 04-15-2018 at 04:07 AM.
 
Old 04-15-2018, 05:52 AM   #57
kjhambrick
Senior Member
 
Registered: Jul 2005
Location: Round Rock, TX
Distribution: Slackware64 15.0 + Multilib
Posts: 2,159

Rep: Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512
burdi01 --

Yes, it is there on on my Slackware64 14.2+ ( current ) box too ...

However, I've never looked for it so ... hmmm ....

-- kjh

What am I running ?
Code:
# cat /etc/slackware-version ; uname -a

Slackware 14.2+
Linux samsung.kjh.home 4.14.34 #2 SMP Thu Apr 12 17:22:32 CDT 2018 x86_64 Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz GenuineIntel GNU/Linux
What is in /.cache ?
Code:
# ls -la /.cache 

total 8
drwx------  2 root root 4096 Apr  9 04:56 ./
drwxr-xr-x 26 root root 4096 Apr 13 13:22 ../
It was apparently created on April 09 but has not been changed and it was last accessed when I looked inside:
Code:
# stat /.cache

  File: /.cache
  Size: 4096            Blocks: 8          IO Block: 4096   directory
Device: 803h/2051d      Inode: 23592961    Links: 2
Access: (0700/drwx------)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2018-04-15 05:09:24.355202229 -0500
Modify: 2018-04-09 04:56:29.206999491 -0500
Change: 2018-04-09 04:56:29.206999491 -0500
 Birth: -
These are the packages installed or updated since April 09 ( in DateTime Order of installation ):
Code:
# get-installed-since -vlH -s 2018-04-09

# packages updated or installed since 2018-04-09
  -rw-r--r-- 1 root root   61729 Apr  9 04:53 kernel-firmware-20180329_8c1e439-noarch-1
  -rw-r--r-- 1 root root     855 Apr  9 04:53 ccache-3.4.2-x86_64-1
  -rw-r--r-- 1 root root     988 Apr  9 04:54 kernel-huge-4.14.33-x86_64-1
  -rw-r--r-- 1 root root     992 Apr  9 04:54 kernel-generic-4.14.33-x86_64-1
  -rw-r--r-- 1 root root  277032 Apr  9 04:54 kernel-modules-4.14.33-x86_64-1
  -rw-r--r-- 1 root root 4202352 Apr  9 04:54 kernel-source-4.14.33-noarch-1
  -rw-r--r-- 1 root root   14356 Apr 10 05:08 gobject-introspection-1.56.1-x86_64-1
  -rw-r--r-- 1 root root   12381 Apr 10 05:08 gvfs-1.36.1-x86_64-1
  -rw-r--r-- 1 root root   14093 Apr 10 05:08 libsoup-2.62.1-x86_64-1
  -rw-r--r-- 1 root root    1136 Apr 10 05:08 wireless_tools-29-x86_64-11
  -rw-r--r-- 1 root root    2176 Apr 10 05:08 libinput-1.10.4-x86_64-1
  -rw-r--r-- 1 root root    5944 Apr 11 03:40 procps-ng-3.3.14-x86_64-1
  -rw-r--r-- 1 root root    1060 Apr 11 03:40 htop-2.2.0-x86_64-1
  -rw-r--r-- 1 root root   12487 Apr 11 03:40 vte-0.52.1-x86_64-1
  -rw-r--r-- 1 root root    7214 Apr 11 03:40 gnupg2-2.2.6-x86_64-1
  -rw-r--r-- 1 root root    1491 Apr 11 03:40 xf86-input-libinput-0.27.1-x86_64-1
  -rw-r--r-- 1 root root     929 Apr 12 07:19 lbzip2-2.5-x86_64-1
  -rw-r--r-- 1 root root    4905 Apr 12 07:19 pkgtools-15.0-noarch-7
  -rw-r--r-- 1 root root    1241 Apr 12 07:19 sqlite-3.23.1-x86_64-1
  -rw-r--r-- 1 root root    5516 Apr 12 07:19 libzip-1.5.1-x86_64-1
  -rw-r--r-- 1 root root    5986 Apr 12 07:19 mozilla-nss-3.36.1-x86_64-1
  -rw-r--r-- 1 root root    3751 Apr 12 07:19 libgpg-error-1.29-x86_64-1
  -rw-r--r-- 1 root root    2232 Apr 13 13:21 aaa_base-14.2-x86_64-3
  -rw-r--r-- 1 root root   27992 Apr 13 13:21 kernel-headers-4.14.34-x86-1
  -rw-r--r-- 1 root root    6026 Apr 13 13:21 cairo-1.15.12-x86_64-1
  -rw-r--r-- 1 root root     988 Apr 13 13:22 kernel-huge-4.14.34-x86_64-1
  -rw-r--r-- 1 root root     992 Apr 13 13:22 kernel-generic-4.14.34-x86_64-1
  -rw-r--r-- 1 root root  277032 Apr 13 13:22 kernel-modules-4.14.34-x86_64-1
  -rw-r--r-- 1 root root 4202634 Apr 13 13:22 kernel-source-4.14.34-noarch-1
Packages removed or replaced since April 09 ( also in DateTime order ):
Code:
# get-removed-since -vlH -s 2018-04-09

# packages removed or updated since 2018-04-09
  -rw-r--r-- 1 root root 61729 Apr  2 04:32 kernel-firmware-20180330_a3be6d4-noarch-1
  -rw-r--r-- 1 root root   987 Feb 27 06:35 ccache-3.4.1-x86_64-1
  -rw-r--r-- 1 root root 27992 Apr  2 04:32 kernel-headers-4.14.32-x86-1
  -rw-r--r-- 1 root root 14356 Apr  4 03:27 gobject-introspection-1.56.0-x86_64-1
  -rw-r--r-- 1 root root 12291 Apr  6 21:35 gvfs-1.36.0-x86_64-1
  -rw-r--r-- 1 root root 13996 Apr  4 03:27 libsoup-2.62.0-x86_64-1
  -rw-r--r-- 1 root root  2176 Mar 16 05:36 libinput-1.10.3-x86_64-1
  -rw-r--r-- 1 root root  5944 Apr  6 21:35 procps-ng-3.3.13-x86_64-1
  -rw-r--r-- 1 root root  1061 Feb  7 04:44 htop-2.1.0-x86_64-1
  -rw-r--r-- 1 root root 12487 Apr  4 03:27 vte-0.52.0-x86_64-1
  -rw-r--r-- 1 root root  7217 Feb 27 06:35 gnupg2-2.2.5-x86_64-1
  -rw-r--r-- 1 root root  1491 Mar 22 05:28 xf86-input-libinput-0.27.0-x86_64-1
  -rw-r--r-- 1 root root  4817 Apr  4 03:26 pkgtools-15.0-noarch-6
  -rw-r--r-- 1 root root  1241 Apr  4 03:27 sqlite-3.23.0-x86_64-1
  -rw-r--r-- 1 root root  5532 Feb  4 02:06 libzip-1.4.0-x86_64-1
  -rw-r--r-- 1 root root  5972 Mar  8 20:43 mozilla-nss-3.36-x86_64-1
  -rw-r--r-- 1 root root  3703 Feb  4 02:07 libgpg-error-1.27-x86_64-1
  -rw-r--r-- 1 root root  2245 Feb  4 01:59 aaa_base-14.2-x86_64-2
  -rw-r--r-- 1 root root 27992 Apr  9 04:53 kernel-headers-4.14.33-x86-1
  -rw-r--r-- 1 root root  6026 Mar  8 20:43 cairo-1.15.10-x86_64-1
  -rw-r--r-- 1 root root  1831 Feb  4 02:07 wireless-tools-29-x86_64-10
This is script get-installed-since if you want it ...

Hardlink get-removed-since to get-installed-since ( ln get-installed-since get-removed-since ) to look for either installed or removed Packages ...
Code:
#!/bin/bash

PrgNam="`basename $0`"
DirNam="`dirname  $0`"

if ! which whichone >/dev/null 2>&1
then
   alias whichone="/usr/bin/which"
fi

if [ "$DirNam" = "." ]
then
   if [ -f "$PrgNam" ]
   then
      DirNam="`pwd`"
   else
      DirNam="`whichone $PrgNam`"
      DirNam="`dirname  $DirNam`"
   fi
elif [ "$DirNam" = ".." ]
then
   DirNam="`pwd`"
   DirNam="`dirname $DirNam`"
elif [ "`dirname $DirNam`" = ".." ]
then
   FooNam="`basename $DirNam`"
   DirNam="`pwd -P`"
   DirNam="`dirname $DirNam`/$FooNam"
elif [ "$DirNam" = "" ]               # should not happen ...
then                                  # see: man 3 dirname
   DirNam="`whichone $PrgNam`"
   DirNam="`dirname  $DirNam`"
fi

AllArg="$@"
CwdDir="`pwd -P`"

if [ "$PrgNam" = "get-removed-since" ]
then
   Which="r"
   PkgDir="/var/log/removed_packages"
   Action="removed"
   Verbed="removed or updated"
else
   Which="i"
   PkgDir="/var/log/packages"
   Action="installed"
   Verbed="updated or installed"
fi

Verbose=0
DoHead=0

FullPath=0
ListLong=0
PathArg=""
ListRaw=0

Since=""

WacExt ()
{
   echo "$@" |
   gawk '
   {
      if (( L = length( $0 )) < 1 )
      {
         print ""
         exit 0
      }
      for ( i = L ; i > 0 ; i -- )
      {
         if (( substr( $0, i,   1 ) == "." ) \
         &&  ( substr( $0, i-1, 1 ) != "/" ))
         {
            print substr( $0, 1, i-1 )
            exit 0
         }
      }
      print $0
      exit 0
   }'
   return $?
}
GetExt ()
{
   GetExtCase=""

   while [ "$1" = "-l" \
        -o "$1" = "-L" \
        -o "$1" = "-u" \
        -o "$1" = "-U" ]
   do
      if [ "$1" = "-l" -o "$1" = "-L" ]
      then
         GetExtCase="l"
         shift
      elif [ "$1" = "-u" -o "$1" = "-U" ]
      then
         GetExtCase="u"
         shift
      fi
   done

   echo "$@" |
   gawk '
   BEGIN {

      Case = "'"$GetExtCase"'" ""

   }
   function FixCase( DoCase, InStr )
   {
      if ( DoCase == "l" )
      {
         return( tolower( InStr ))
      }
      if ( DoCase == "u" )
      {
         return( toupper( InStr ))
      }
      return( InStr )
   }
   # main
   {
      if (( L = length( $0 )) < 1 )
      {
         print ""
         exit 0
      }
      for ( i = L ; i > 0 ; i -- )
      {
         if (( substr( $0, i,   1 ) == "." ) \
         &&  ( substr( $0, i-1, 1 ) != "/" ))
         {
            print FixCase( Case, substr( $0, i ))
            exit 0
         }
      }
      print ""
      exit 0
   }'
   return $?
}
FixPath ()
{
   Path="$1" ; shift

   gawk '
   BEGIN {

      Path = "'"$Path"'"  ""

      L = length( Path )

      if (( L > 0 ) && ( substr( Path, L, 1 ) != "/" ))
      {
         Path = Path "/"
      }
   }
   function Trim( InStr )
   {
      gsub ( /^[\t\n\r ]*/, "", InStr )
      gsub ( /[\t\n\r ]*$/, "", InStr )
      return ( InStr )
   }
   # main
   {
      for ( i = 1 ; i <= NF ; i ++ )
      {
         if (( File = Trim( $i )) == "" )
         {
            next
         }
         gsub( /^\.\//, Path, File )
   
         print File
      }
   }'
   return
}
Usage ()
{
   ErrNum=$1
   shift

   [ $# -gt 0 ] && echo -e "\n$*" >&2

   echo -e "\nusage:  $PrgNam [ -foo ] " >&2
   cat  <<Usage_EOF >&2

Program $PrgNam Options:

      d)    PkgDir="\$OPTARG"
            ;;
      s)    Since="\$OPTARG"
            ;;
      p)    FullPath=1
            PathArg="\$PkgDir"
            ;;
      y)    Since="\$(date -d yesterday '+%Y-%m-%d')"
            ;;
      H)    DoHead=1
            ;;
      r)    ListRaw=1
            ;;
      l)    ListLong=1
            ;;
      v)    Verbose=1
            ;;
      h)    Usage 0
            ;;
      *)    Usage 1
            ;;
 
Usage_EOF
 
   exit $ErrNum

}
while  getopts rHylpvhs:d: junk 2>/dev/null
do
   case $junk in
      d)    PkgDir="$OPTARG"
            ;;
      s)    Since="$OPTARG"
            ;;
      p)    FullPath=1
            PathArg="$PkgDir"
            ;;
      y)    Since="$(date -d yesterday '+%Y-%m-%d')"
            ;;
      H)    DoHead=1
            ;;
      r)    ListRaw=1
            ;;
      l)    ListLong=1
            ;;
      v)    Verbose=1
            ;;
      h)    Usage 0
            ;;
      *)    Usage 1
            ;;
   esac
done

shift `expr $OPTIND - 1`

[ "$Since" = "" ] && Since="$(date '+%Y-%m-%d')"

cd "$PkgDir" || ( echo "$PrgNam -- cannot cd into '$PkgDir'" >&2 ; exit 2 ; )

if [ "$Which" = "r" ]
then
   List="$(find . -type f -newerct "$Since"  |FixPath "$PathArg")"
   RetCode=${PIPESTATUS[0]}
else
   List="$(find . -type f -newerct "$Since"  |FixPath "$PathArg")"
   RetCode=${PIPESTATUS[0]}
fi

if [ "$List" = "" -o "$RetCode" != "0" ] 
then

   [ "$Verbose" = "1" ] && echo "  no packages have been $Verbed since $Since"
   exit 1
fi

if [ "$ListLong" = "1" ]
then
   LSArg="-lartd"
else
   LSArg="-1drt"
fi 


[ "$DoHead" = "1" ] && echo "# packages $Verbed since $Since"

ls $LSArg $List |
if [ "$ListRaw" = "0" -a "$Which" = "r" ]
then
   gawk -F '-' '{ print $(NF-2)$(NF-1)$(NF) " " SUBSEP $0 }' |sort -k1,1 |gawk 'BEGIN{ FS = SUBSEP }{print $2 }'
else
   cat
fi |
if [ "$Verbose" = "1" ]
then
   sed -e 's/^/  /'
else
   cat
fi |
if [ "$ListRaw" = "0" -a "$Which" = "r" -a "$FullPath" != "1" ]
then
   sed -e "s/-upgraded-[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9],.*$//"
else
   cat
fi
  
exit 0
 
Old 04-15-2018, 06:55 AM   #58
chrisretusn
Senior Member
 
Registered: Dec 2005
Location: Philippines
Distribution: Slackware64-current
Posts: 2,968

Rep: Reputation: 1546Reputation: 1546Reputation: 1546Reputation: 1546Reputation: 1546Reputation: 1546Reputation: 1546Reputation: 1546Reputation: 1546Reputation: 1546Reputation: 1546
Saw this thread, looked and found /.cache.

Code:
# ls -la /.cache/
drwx------  2 root root 4096 Apr  9 19:00 ./
drwxr-xr-x 26 root root 4096 Apr 14 23:43 ../

# stat /.cache/
  File: /.cache/
  Size: 4096            Blocks: 8          IO Block: 4096   directory
Device: 801h/2049d      Inode: 2359436     Links: 2
Access: (0700/drwx------)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2018-04-15 19:41:36.271551226 +0800
Modify: 2018-04-09 19:00:49.873999588 +0800
Change: 2018-04-09 19:00:49.873999588 +0800
 Birth: -

/var/log/packages# ls -ltr | grep "Apr  9"
-rw-r--r-- 1 root root   10536 Apr  9 18:39 Thunar-1.6.15-x86_64-1
-rw-r--r-- 1 root root    1450 Apr  9 18:39 alsa-lib-compat32-1.1.6-x86_64-2compat32
-rw-r--r-- 1 root root    1192 Apr  9 18:39 alsa-oss-compat32-1.1.6-x86_64-1compat32
-rw-r--r-- 1 root root    2433 Apr  9 18:39 alsa-plugins-compat32-1.1.6-x86_64-1compat32
-rw-r--r-- 1 root root     871 Apr  9 18:39 atk-compat32-2.28.1-x86_64-1compat32
-rw-r--r-- 1 root root    2663 Apr  9 18:39 bluez-5.49-x86_64-2
-rw-r--r-- 1 root root    2574 Apr  9 18:39 btrfs-progs-v4.16-x86_64-1
-rw-r--r-- 1 root root     843 Apr  9 18:39 ccache-3.4.2-x86_64-1
-rw-r--r-- 1 root root    2789 Apr  9 18:39 cups-compat32-2.2.7-x86_64-1compat32
-rw-r--r-- 1 root root    2519 Apr  9 18:39 cups-filters-compat32-1.20.2-x86_64-1compat32
-rw-r--r-- 1 root root    1234 Apr  9 18:39 curl-compat32-7.59.0-x86_64-2compat32
-rw-r--r-- 1 root root    1593 Apr  9 18:40 dhcpcd-7.0.3-x86_64-1
-rw-r--r-- 1 root root    1354 Apr  9 18:40 e2fsprogs-compat32-1.44.1-x86_64-1compat32
-rw-r--r-- 1 root root    3979 Apr  9 18:40 exiv2-0.26-x86_64-2
-rw-r--r-- 1 root root   17516 Apr  9 18:40 gdk-pixbuf2-2.36.12-x86_64-1
-rw-r--r-- 1 root root    1374 Apr  9 18:40 glib-1.2.10-x86_64-5
-rw-r--r-- 1 root root   45130 Apr  9 18:40 glib2-2.56.1-x86_64-1
-rw-r--r-- 1 root root    1920 Apr  9 18:40 glib2-compat32-2.56.0-x86_64-1compat32
-rw-r--r-- 1 root root    1759 Apr  9 18:40 gnome-keyring-compat32-3.28.0.2-x86_64-1compat32
-rw-r--r-- 1 root root    1511 Apr  9 18:40 harfbuzz-compat32-1.7.6-x86_64-2compat32
-rw-r--r-- 1 root root    1378 Apr  9 18:40 icu4c-compat32-61.1-x86_64-1compat32
-rw-r--r-- 1 root root    4196 Apr  9 18:40 joe-4.6-x86_64-1
-rw-r--r-- 1 root root   61717 Apr  9 18:41 kernel-firmware-20180329_8c1e439-noarch-1
-rw-r--r-- 1 root root    1154 Apr  9 18:41 libidn-compat32-1.34-x86_64-1compat32
-rw-r--r-- 1 root root     927 Apr  9 18:41 libusb-compat32-1.0.22-x86_64-1compat32
-rw-r--r-- 1 root root    9240 Apr  9 18:41 libxfce4util-4.12.1-x86_64-3
-rw-r--r-- 1 root root    4191 Apr  9 18:41 mariadb-compat32-10.2.14-x86_64-1compat32
-rw-r--r-- 1 root root    3399 Apr  9 18:41 mesa-compat32-18.0.0-x86_64-1compat32
-rw-r--r-- 1 root root    2014 Apr  9 18:42 ncurses-compat32-6.1_20180324-x86_64-3compat32
-rw-r--r-- 1 root root    1680 Apr  9 18:42 openssl-compat32-1.0.2o-x86_64-1compat32
-rw-r--r-- 1 root root    1190 Apr  9 18:42 openssl-solibs-compat32-1.0.2o-x86_64-1compat32
-rw-r--r-- 1 root root    5625 Apr  9 18:42 pango-1.42.1-x86_64-1
-rw-r--r-- 1 root root    1592 Apr  9 18:42 pango-compat32-1.42.0-x86_64-1compat32
-rw-r--r-- 1 root root    1023 Apr  9 18:42 patch-2.7.6-x86_64-2
-rw-r--r-- 1 root root    5496 Apr  9 18:42 slang-2.3.2-x86_64-2
-rw-r--r-- 1 root root    1240 Apr  9 18:42 sqlite-compat32-3.23.0-x86_64-1compat32
-rw-r--r-- 1 root root    1158 Apr  9 18:42 strace-4.22-x86_64-1
-rw-r--r-- 1 root root    5470 Apr  9 18:42 sysstat-11.6.3-x86_64-1
-rw-r--r-- 1 root root    1012 Apr  9 18:47 kernel-generic-4.14.33-x86_64-1
-rw-r--r-- 1 root root  277052 Apr  9 18:47 kernel-modules-4.14.33-x86_64-1
-rw-r--r-- 1 root root   28012 Apr  9 18:48 kernel-headers-4.14.33-x86-1
-rw-r--r-- 1 root root 4202372 Apr  9 18:48 kernel-source-4.14.33-noarch-1
Appears to have been created after my reboot.
 
Old 04-15-2018, 07:37 AM   #59
kjhambrick
Senior Member
 
Registered: Jul 2005
Location: Round Rock, TX
Distribution: Slackware64 15.0 + Multilib
Posts: 2,159

Rep: Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512Reputation: 1512
Quote:
Originally Posted by chrisretusn View Post
Saw this thread, looked and found /.cache.

<<snip>>

Appears to have been created after my reboot.
Good Eye chrisretusn !

Mine too !
Code:
# stat /.cache  
   
  File: /.cache
  Size: 4096            Blocks: 8          IO Block: 4096   directory
Device: 803h/2051d      Inode: 23592961    Links: 2
Access: (0700/drwx------)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2018-04-15 05:09:24.355202229 -0500
Modify: 2018-04-09 04:56:29.206999491 -0500
Change: 2018-04-09 04:56:29.206999491 -0500                                 <-- this one 
 Birth: -
When I booted 4.14.33:
Code:
# last reboot 

reboot   system boot  4.14.34          Fri Apr 13 13:26 - 07:32 (1+18:06)   
reboot   system boot  4.14.33          Thu Apr 12 07:20 - 13:25 (1+06:04)   
reboot   system boot  4.14.33          Mon Apr  9 04:56 - 07:20 (3+02:23)   <-- and this one
reboot   system boot  4.14.32          Wed Apr  4 03:31 - 04:55 (5+01:24)   

<<snip>>

wtmp begins Sun Feb  4 08:16:37 2018
P.S. I manage this box via SSH ... could there be an issue with the XDG_* Varbs and SSH ?

-- kjh

Last edited by kjhambrick; 04-15-2018 at 07:40 AM. Reason: added P.S.
 
Old 04-15-2018, 12:03 PM   #60
allend
LQ 5k Club
 
Registered: Oct 2003
Location: Melbourne
Distribution: Slackware64-15.0
Posts: 6,371

Rep: Reputation: 2748Reputation: 2748Reputation: 2748Reputation: 2748Reputation: 2748Reputation: 2748Reputation: 2748Reputation: 2748Reputation: 2748Reputation: 2748Reputation: 2748
Using the same debugging technique as in post #25, the bug seems to be due to to this in /etc/rd.c/rc.M
Code:
if [ -x /usr/bin/update-gtk-immodules ]; then
  echo "Updating gtk.immodules:"
  echo "  /usr/bin/update-gtk-immodules &"
  /usr/bin/update-gtk-immodules > /dev/null 2>&1 &
fi
Further isolation suggests that surprise, surprise (I think not) this is fsckin gnome.
Changing rc.M to read
Code:
if [ -x /usr/bin/update-gtk-immodules-2.0 ]; then
  echo "Updating gtk.immodules-2.0:"
  echo "  /usr/bin/update-gtk-immodules-2.0 &"
  /usr/bin/update-gtk-immodules-2.0 > /dev/null 2>&1 &
fi
if [ -x /usr/bin/update-gtk-immodules-3.0 ]; then
  echo "Updating gtk.immodules-3.0:"
  echo "  /usr/bin/update-gtk-immodules-3.0 &"
  /usr/bin/update-gtk-immodules-3.0 --update-cache > /dev/null 2>&1 &
fi
does not help.
I am tired and I am going to bed.

Last edited by allend; 04-15-2018 at 12:06 PM.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] latest hplip on current64 reclusivewriter Slackware 34 06-10-2016 06:27 PM
[SOLVED] Current64 sound has a mind of its own Gordie Slackware 20 02-22-2016 06:32 AM
[SOLVED] Pdfshuffler and poppler in current64 aszabo Slackware 3 02-01-2016 11:01 AM
[SOLVED] -current64 aclocal segfault KaMii Slackware 8 11-07-2015 12:46 AM
Autokey and current64 charlie_lab Slackware 4 03-20-2010 03:56 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 10:43 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration