# Code re-organization: eos-pacdiff

**URL:** <https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038>\
**Category:** EndeavourOS installation\
**Created:** [April 29, 2021, 2:16pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038 "2021-04-29T14:16:49Z")\
**Posts on this page:** 18\
**Page:** 1

<div class="post-metadata">

**Author:** ![manuel](https://forum.endeavouros.com/user_avatar/forum.endeavouros.com/manuel/32/396_2.png) [@manuel](https://forum.endeavouros.com/u/manuel)\
**Post date:** [April 29, 2021, 2:16pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038/1 "2021-04-29T14:16:49Z")

</div>

I reorganized Welcome app code and “extracted” a new standalone CLI command `eos-pacdiff` from Welcome. Now Welcome is using that standalone command as well.

`eos-pacdiff` invokes `pacdiff` and uses the configured (see /etc/eos-script-lib-yad.conf) diffing program.

As `eos-pacdiff` knows about the running environment, and like Welcome’s version did on Wayland, `eos-pacdiff` will prefer `diffuse` on Wayland.  
Note that if Wayland users would not like the hard-coded preference of `diffuse`, please let me know.

---

<div class="post-metadata">

**Author:** ![anon92247698](https://forum.endeavouros.com/letter_avatar_proxy/v4/letter/a/919ad9/32.png) [@anon92247698](https://forum.endeavouros.com/u/anon92247698)\
**Post date:** [April 29, 2021, 4:44pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038/2 "2021-04-29T16:44:47Z")

</div>

Does this now mean that _meld_ is no longer needed for comparison?

---

<div class="post-metadata">

**Author:** ![manuel](https://forum.endeavouros.com/user_avatar/forum.endeavouros.com/manuel/32/396_2.png) [@manuel](https://forum.endeavouros.com/u/manuel)\
**Post date:** [April 29, 2021, 4:48pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038/3 "2021-04-29T16:48:09Z")

</div>

No, that hasn’t changed in any way.

eos-pacdiff uses the configured (see /etc/eos-scrips-lib-yad.conf) diffing program just like Welcome did (and still does).

---

<div class="post-metadata">

**Author:** ![anon92247698](https://forum.endeavouros.com/letter_avatar_proxy/v4/letter/a/919ad9/32.png) [@anon92247698](https://forum.endeavouros.com/u/anon92247698)\
**Post date:** [April 29, 2021, 4:56pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038/4 "2021-04-29T16:56:20Z")

</div>

thx @manuel

---

<div class="post-metadata">

**Author:** ![freebird54](https://forum.endeavouros.com/user_avatar/forum.endeavouros.com/freebird54/32/83106_2.png) [@freebird54](https://forum.endeavouros.com/u/freebird54)\
**Post date:** [April 29, 2021, 7:31pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038/5 "2021-04-29T19:31:04Z")

</div>

Thanks @manuel! Instantly into my aliases list - saves on wasted _welcome_ startups too! Love those little goodies (su-c\_wrapper, RunInTerminal etc).

---

<div class="post-metadata">

**Author:** ![anon92247698](https://forum.endeavouros.com/letter_avatar_proxy/v4/letter/a/919ad9/32.png) [@anon92247698](https://forum.endeavouros.com/u/anon92247698)\
**Post date:** [April 29, 2021, 7:33pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038/6 "2021-04-29T19:33:12Z")

</div>

> [@freebird54](#):
>
> Instantly into my aliases list

What does this alias look like?

---

<div class="post-metadata">

**Author:** ![freebird54](https://forum.endeavouros.com/user_avatar/forum.endeavouros.com/freebird54/32/83106_2.png) [@freebird54](https://forum.endeavouros.com/u/freebird54)\
**Post date:** [April 29, 2021, 7:38pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038/7 "2021-04-29T19:38:56Z")

</div>

Having a limited imagination, it is only:

```auto
alias pacdiff='eos-pacdiff'

```

so I don’t have to learn anything new! 😁

---

<div class="post-metadata">

**Author:** ![anon92247698](https://forum.endeavouros.com/letter_avatar_proxy/v4/letter/a/919ad9/32.png) [@anon92247698](https://forum.endeavouros.com/u/anon92247698)\
**Post date:** [April 29, 2021, 7:54pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038/8 "2021-04-29T19:54:36Z")

</div>

I get the following error message:

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

Is it sufficient to install _vim_ additionally or someone else? btw, I have installed _meld_

---

<div class="post-metadata">

**Author:** ![manuel](https://forum.endeavouros.com/user_avatar/forum.endeavouros.com/manuel/32/396_2.png) [@manuel](https://forum.endeavouros.com/u/manuel)\
**Post date:** [April 29, 2021, 7:58pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038/9 "2021-04-29T19:58:57Z")

</div>

See file /etc/eos-script-lib-yad.conf, variable EOS\_WELCOME\_PACDIFFERS.  
That’s a list of supported diff programs.

---

<div class="post-metadata">

**Author:** ![freebird54](https://forum.endeavouros.com/user_avatar/forum.endeavouros.com/freebird54/32/83106_2.png) [@freebird54](https://forum.endeavouros.com/u/freebird54)\
**Post date:** [April 29, 2021, 8:02pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038/10 "2021-04-29T20:02:32Z")

</div>

In the /etc directory is a file _ **eos-script-lib-yad.conf** _, and an item in those settings is:

```auto
EOS_WELCOME_PACDIFFERS=(meld kdiff3 kompare diffuse code diff vim)

```

where the first item mentioned ( **meld** ) is the one used for pacdiff. Other interesting settings in there - depending which of the goodies you use. For instance, I use su-c\_wrapper rather than sudo for things like updates, so as to force some thought for using root password instead of sudo user password on system-changing stuff…

---

<div class="post-metadata">

**Author:** ![manuel](https://forum.endeavouros.com/user_avatar/forum.endeavouros.com/manuel/32/396_2.png) [@manuel](https://forum.endeavouros.com/u/manuel)\
**Post date:** [April 29, 2021, 8:05pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038/11 "2021-04-29T20:05:48Z")

</div>

Have you updated your system? The error message might indicate old versions.

And, could you show your config file:

```auto
cat /etc/eos-script-lib-yad.conf | eos-sendlog

```

and show the URL here?

---

<div class="post-metadata">

**Author:** ![anon92247698](https://forum.endeavouros.com/letter_avatar_proxy/v4/letter/a/919ad9/32.png) [@anon92247698](https://forum.endeavouros.com/u/anon92247698)\
**Post date:** [April 29, 2021, 8:08pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038/12 "2021-04-29T20:08:17Z")

</div>

Thanks, but that still doesn’t answer my question. The error message tells me that _Vim_ is not found. However, meld is used. What to do?  
The welcome app shows me that _meld_ has been detected.

![Screenshot_20210429_220619](https://forum.endeavouros.com/uploads/default/original/3X/1/f/1f6d2c46541ce98d3cb359b53b2e285c6e82053e.png)

---

<div class="post-metadata">

**Author:** ![anon92247698](https://forum.endeavouros.com/letter_avatar_proxy/v4/letter/a/919ad9/32.png) [@anon92247698](https://forum.endeavouros.com/u/anon92247698)\
**Post date:** [April 29, 2021, 8:09pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038/13 "2021-04-29T20:09:35Z")

</div>

> [@manuel](#):
>
> Have you updated your system? The error message might indicate old versions.
> 
> And, could you show your config file:
> 
> ```auto
> cat /etc/eos-script-lib-yad.conf | eos-sendlog
> 
> ```
> 
> and show the URL here?

Ok, the last update is still pending.

---

<div class="post-metadata">

**Author:** ![anon92247698](https://forum.endeavouros.com/letter_avatar_proxy/v4/letter/a/919ad9/32.png) [@anon92247698](https://forum.endeavouros.com/u/anon92247698)\
**Post date:** [April 29, 2021, 8:11pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038/14 "2021-04-29T20:11:53Z")

</div>

After the update it works with the alias from @freebird54 , thx alot!

---

<div class="post-metadata">

**Author:** ![manuel](https://forum.endeavouros.com/user_avatar/forum.endeavouros.com/manuel/32/396_2.png) [@manuel](https://forum.endeavouros.com/u/manuel)\
**Post date:** [April 29, 2021, 8:14pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038/15 "2021-04-29T20:14:06Z")

</div>

Great! 😄

Updates are important, especially when they don’t break stuff. 😉 🤣

---

<div class="post-metadata">

**Author:** ![anon92247698](https://forum.endeavouros.com/letter_avatar_proxy/v4/letter/a/919ad9/32.png) [@anon92247698](https://forum.endeavouros.com/u/anon92247698)\
**Post date:** [April 29, 2021, 8:15pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038/16 "2021-04-29T20:15:01Z")

</div>

> [@manuel](#):
>
> especially when they don’t break stuff

🙏🏻

---

<div class="post-metadata">

**Author:** ![ringo](https://forum.endeavouros.com/user_avatar/forum.endeavouros.com/ringo/32/66182_2.png) [@ringo](https://forum.endeavouros.com/u/ringo)\
**Post date:** [April 29, 2021, 8:48pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038/17 "2021-04-29T20:48:39Z")

</div>

At the end welcome get matured to work into a endeavour launch manager lol

---

<div class="post-metadata">

**Author:** ![freebird54](https://forum.endeavouros.com/user_avatar/forum.endeavouros.com/freebird54/32/83106_2.png) [@freebird54](https://forum.endeavouros.com/u/freebird54)\
**Post date:** [April 29, 2021, 9:55pm UTC](https://forum.endeavouros.com/t/code-re-organization-eos-pacdiff/14038/18 "2021-04-29T21:55:12Z")

</div>

Almost worth a look at splitting off 'Welcome" and EOS-Assistant by now 😁 Especially if you add in a few ‘Personal Commands’ to taste…
