Friday, October 13, 2023

Molden: increasing File Select window size

 For any who know me, it is likely no surprise I make obscenely descriptive file names which contain all of the pertinent input parameters for a given electronic structure program. Molden, however, is not so keen on displaying my beautiful, long file names. After a bit of sleuthing through the source code, here is what I came up with for increasing the size of the File Select box. These are pixel-based sizes and positions (as opposed to percentages or anything that scales in relative size), and I increased mine by 100. Below is the diff file capturing the increases.


< #define QBOXWIDE  450
---
> #define QBOXWIDE  550
7993c7993
< #define DIRW 255
---
> #define DIRW 355
8000c8000
< #define DDIRW 255
---
> #define DDIRW 355
20819c20819
<     butje(fs->win,320,40,80,70,1,0,0,1,None,0,0,0,0);
---
>     butje(fs->win,420,40,80,70,1,0,0,1,None,0,0,0,0);
20825,20828c20825,20828
<     LineString(fs->win, "Filter:", 322, 150);
<     LineString(fs->win, "Replace", 350, 75);
<     LineString(fs->win, "Add", 350, 105);
<     LineString(fs->win, "Show", 350, 130);
---
>     LineString(fs->win, "Filter:", 422, 150);
>     LineString(fs->win, "Replace", 450, 75);
>     LineString(fs->win, "Add", 450, 105);
>     LineString(fs->win, "Show", 450, 130);
20852c20852
<     butje(fs->win,320,40,80,70,1,0,0,1,None,0,0,0,0);
---
>     butje(fs->win,420,40,80,70,1,0,0,1,None,0,0,0,0);
20860,20861c20860,20861
<   ULineString(fs->win, "Files", 325, 55);
<   ULineString(fs->win, "Directories", 325, 265);
---
>   ULineString(fs->win, "Files", 425, 55);
>   ULineString(fs->win, "Directories", 425, 265);
20863,20866c20863,20866
<     LineString(fs->win, "Filter:", 322, 150);
<     LineString(fs->win, "Replace", 350, 75);
<     LineString(fs->win, "Add", 350, 105);
<     LineString(fs->win, "Show", 350, 130);
---
>     LineString(fs->win, "Filter:", 422, 150);
>     LineString(fs->win, "Replace", 450, 75);
>     LineString(fs->win, "Add", 450, 105);
>     LineString(fs->win, "Show", 450, 130);
21355c21355
<     DefBut(&fs->rbut[BDIR],  fs->win, 325, 275            , 110, BUTTH,
---
>     DefBut(&fs->rbut[BDIR],  fs->win, 425, 275            , 110, BUTTH,
21359c21359
<     DefBut(&fs->rbut[BCAN],  fs->win, 325, 275+BUTTN      , 50, BUTTH,
---
>     DefBut(&fs->rbut[BCAN],  fs->win, 425, 275+BUTTN      , 50, BUTTH,
21362c21362
<     DefBut(&fs->rbut[BREP],  fs->win, 325, 65            , 15, 15,
---
>     DefBut(&fs->rbut[BREP],  fs->win, 425, 65            , 15, 15,
21364c21364
<     DefBut(&fs->rbut[BADD],  fs->win, 325, 90            ,15, 15,
---
>     DefBut(&fs->rbut[BADD],  fs->win, 425, 90            ,15, 15,
21366c21366
<     DefBut(&fs->rbut[BPDB],  fs->win, 380, 216           ,65, BUTTH,
---
>     DefBut(&fs->rbut[BPDB],  fs->win, 480, 216           ,65, BUTTH,
21368c21368
<     DefBut(&fs->rbut[BSPDB],  fs->win, 355, DEFQY        ,90, BUTTN,
---
>     DefBut(&fs->rbut[BSPDB],  fs->win, 455, DEFQY        ,90, BUTTN,
21371c21371
<     DefBut(&fs->rbut[BSAVE],  fs->win, 310, DEFQY        ,40, BUTTN,
---
>     DefBut(&fs->rbut[BSAVE],  fs->win, 410, DEFQY        ,40, BUTTN,
21373c21373
<     DefBut(&fs->rbut[BSHOW],  fs->win, 325, 115          ,15, 15,
---
>     DefBut(&fs->rbut[BSHOW],  fs->win, 425, 115          ,15, 15,
21378c21378
<     DefBut(&fs->rbut[BCAN],  fs->win, 325, 275+BUTTN      , 50, BUTTH,
---
>     DefBut(&fs->rbut[BCAN],  fs->win, 425, 275+BUTTN      , 50, BUTTH,
21420c21420
<        qboxstr(&qboxes[QSUBSTR],&fs->win,0,0,190,322,
---
>        qboxstr(&qboxes[QSUBSTR],&fs->win,0,0,190,422,
21424c21424
<     qboxstr(&qboxes[QPDB],&fs->win,0,0,190,322,
---
>     qboxstr(&qboxes[QPDB],&fs->win,0,0,190,422,
benjfitz@ansible:/cluster/software$

Saturday, October 7, 2023

Compiling Molden 7.3 from scratch on Ubuntu 22.04

 

etablues (on Reddit) did the heavy lifting on this one with Molden 6.9 and below is the original link.

https://www.reddit.com/r/comp_chem/comments/v7865d/tutorial_compiling_molden_from_source_on_debian/

 

For Molden 7.3 I made a few changes.

1) Two of the packages listed on Molden's site were no longer available on Ubuntu, so no need to install them.

sudo apt-get install libX11-6
sudo apt-get install libX11-dev


2) The addition to FFLAG (-w -fallow-argument-mismatch) is also needed for ./docker/Makefile.


3) ./surf/makefile needs one line changed

@ makedepend $(INCLUDE) -f makedep $(DEPEND)

to

@ $(CC) $(INCLUDE) -M $(DEPEND) > makedep

per this blog: http://verahill.blogspot.com/2012/09/molden-on-debian-testing.html


4) utils/register_extension_gio.sh needs to comment out line:

#sudo cp ~/.local/share/applications/$APP.desktop /usr/share/app-install/desktop/$APP:$APP.desktop