dossier-complet/dossier-notes.org

68 lines
2.8 KiB
Org Mode
Raw Normal View History

#+TITLE: Different notes concerning the workflow around the dossier
* Context
The document in this directory is the document I used for my ATER
applications in 2015, and MCF applications in 2016 and 2017. I keep
updating it to keep track of what I am doing with my career.
One of the goals of this document is helping myself prepare my
professorship applications later on, but the career tracking part is
increasingly important.
* Structure
The dossier is split over very many =.tex= files, a
=candidature.sty= file, and a number of =.bib= files storing various
bibliographies. The =.tex= files contain a chapter of the dossier
each. The =.bib= files group the references roughly by various
criteria:
- domain: =algebra.bib=, =mcrs.bib= (model checking of reaction
systems), etc.
- application destination: =evry.bib=, =lifo.bib=, etc.
- people: =hdr_noverlan.bib= (citations in Sergey's HDR not
including him), =hdr_verlan.bib= (citations of Sergey's own work
in his HDR).
Additionally, =sivanov.bib= corresponds to the latest export of by
bibliography from [[https://dblp.uni-trier.de/pers/hd/i/Ivanov_0001:Sergiu][DBLP]], while =sivanov-extra.bib= lists some
publications which are not tracked on DBLP.
* My CV in French
The dossier includes my two-page short academic CV. I use the
script [[file:make-cv-fr][make-cv-fr]] to extract it to [[file:sivanov-cv-fr.pdf][sivanov-cv-fr.pdf]].
* Building
I use Haskell's [[https://hackage.haskell.org/package/shake][Shake]] build system to fully compile my dossier. The
code defining how to build the dossier is in file:_shake/Build.hs.
Essentially, this file tries to runs Biber and the LaTeX a
sufficient number of times to get the references right. It does not
always correctly guess the number of times, so I sometimes need to
touch a file to make Shake recognise that a rebuild is due.
** Building the build system
When file:_shake/Build.hs is updated, the build system needs to be
rebuild. A good way to do it is using Cabal in the following way:
#+BEGIN_SRC shell
cabal update # update the package lists
cabal build # rebuild the package
#+END_SRC
Note that I set up a sandbox for the build system, so the previous
commands operate in this sandbox.
I don't rebuild the build system often, so most of the times I do
it I have to bump upper bounds on the versions of dependencies in
file:_shake/build.cabal.
The binary resulting from the build is usually placed in a deeply
nested subdirectory of file:_shake. For convenience, the symlink
=build= in the root directory of the dossier points to this binary.
* Local Variables :noexport:
# Local Variables:
# eval: (auto-fill-mode)
# ispell-local-dictionary: "en"
# org-link-file-path-type: relative
# End: