desktop-app icon indicating copy to clipboard operation
desktop-app copied to clipboard

(Linux) The installation directory violates the Filesystem Hierarchy Standard

Open ghost opened this issue 3 years ago • 2 comments

Bug report

Describe your environment

  • Device: Desktop
  • OS name and version: Arch Linux
  • IVPN app version: 3.7.0

Describe the problem

Currently, IVPN configuration files are installed in /opt/ivpn/etc. However, this violates the Filesystem Hierarchy Standard. The correct installation location is /etc/opt/ivpn.

The directory in which they are installed must be changed.

Relevant Code:

// TODO(you): code here to reproduce the problem

ghost avatar Apr 29 '22 10:04 ghost

Also, firewall.sh and other files must be moved to /opt/ivpn/bin, as you are not allowed to put executables in /etc.

ghost avatar Apr 29 '22 10:04 ghost

@maltabeeffishrelish On reading the document to which you linked, my personal opinion (FWIW) is that I don't think that the IVPN installation is doing anything incorrectly.

Paragraph 3 of the Rationale subsection of section 3.13.2 of the document states:

Generally, all data required to support a package on a system must be present within /opt/, including files intended to be copied into /etc/opt/ and /var/opt/ as well as reserved directories in /opt.

My reading of the above is that:

  1. Add-on packages must contain everything they need within /opt/<PACKAGE> including whatever may be inserted into /etc
  2. However, Section 3.13 does not state that an add-on package must put everything it contains in /opt/<PACKAGE>/etc into /etc/opt/<PACKAGE>.
  3. Therefore, it would indeed be correct - per the spec in that document - for the IVPN installation to keep everything contained within /opt/ivpn without mandating that it put things elsewhere in the filesystem.

Your point about firewall.sh and friends being in /opt/ivpn/etc is valid, though - these should probably be elsewhere within /opt/ivpn/, perhaps in a bin/ subdirectory.

Kartikeya-IYER avatar May 09 '22 15:05 Kartikeya-IYER

/opt/ivpn/mutable moved to /etc/opt/ivpn/mutable /opt/ivpn/log moved to /var/log/ivpn

@gorkapernas v3.10.7 is ready for tests

stenya avatar Jan 20 '23 13:01 stenya

Verified on beta versions 3.10.7/3.10.8, the files mentioned have been moved to the expected directories as commented on https://github.com/ivpn/desktop-app/issues/151#issuecomment-1398358823

This should be good to go.

gorkapernas avatar Jan 25 '23 16:01 gorkapernas

v3.10.14 released

stenya avatar Feb 27 '23 12:02 stenya