right install method + fixed hedgedoc bugs
This commit is contained in:
		
							parent
							
								
									8df8d6eee6
								
							
						
					
					
						commit
						665b9ba013
					
				
					 4 changed files with 33 additions and 13 deletions
				
			
		
							
								
								
									
										25
									
								
								shell.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								shell.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,25 @@ | |||
| {pkgs ? import <nixpkgs> {}}: let | ||||
|   rust-toolchain = pkgs.symlinkJoin { | ||||
|     name = "rust-toolchain"; | ||||
|     paths = with pkgs; [rustc cargo rustPlatform.rustcSrc rustfmt clippy]; | ||||
|   }; | ||||
| in | ||||
|   pkgs.mkShell { | ||||
|     nativeBuildInputs = with pkgs.buildPackages; [ | ||||
|       rust-toolchain | ||||
| 
 | ||||
|       pkg-config | ||||
|       xe | ||||
|       xz | ||||
| 
 | ||||
|       cargo-tarpaulin | ||||
|       openssl | ||||
|       sqlite | ||||
|       gcc | ||||
|       gnumake | ||||
| 
 | ||||
|       # dotnet-sdk_8 | ||||
|     ]; | ||||
| 
 | ||||
|     RUST_SRC_PATH = "${pkgs.rust.packages.stable.rustPlatform.rustLibSrc}"; | ||||
|   } | ||||
|  | @ -156,9 +156,9 @@ impl HedgeDoc { | |||
| 
 | ||||
|     pub fn rotate(config: &KeyValueStore, is_dry_run: bool) -> Result<String, Box<dyn Error>> { | ||||
|         let hold_pad_id = &config["hedgedoc-next-id"]; | ||||
|         config.set("hedgedoc-last-id", hold_pad_id); | ||||
|         config.set("hedgedoc-last-id", hold_pad_id)?; | ||||
|         let new_id = HedgeDoc::new(&config.get("hedgedoc-server-url").unwrap(), is_dry_run).create_pad()?; | ||||
|         config.set("hedgedoc-next-id", &new_id); | ||||
|         config.set("hedgedoc-next-id", &new_id)?; | ||||
|         Ok(new_id) | ||||
|     } | ||||
| 
 | ||||
|  |  | |||
							
								
								
									
										15
									
								
								src/main.rs
									
										
									
									
									
								
							
							
						
						
									
										15
									
								
								src/main.rs
									
										
									
									
									
								
							|  | @ -3,7 +3,7 @@ | |||
| use cccron_lib::config_spec::{self, CfgField, CfgGroup, CfgSpec}; | ||||
| use cccron_lib::date; | ||||
| use cccron_lib::email::{self, Email, SimpleEmail}; | ||||
| use cccron_lib::hedgedoc::{self, HedgeDoc}; | ||||
| use cccron_lib::hedgedoc::{self, HedgeDoc,}; | ||||
| use cccron_lib::is_dry_run; | ||||
| use cccron_lib::key_value::{KeyValueStore as KV, KeyValueStore}; | ||||
| use cccron_lib::matrix::{self, MatrixClient}; | ||||
|  | @ -306,7 +306,7 @@ fn topic_count(n: usize, dative: bool) -> String { | |||
| fn get_pad_info(config: &KV, hedgedoc: &HedgeDoc) -> (String, String, String, usize) { | ||||
|     let current_pad_id = &config["hedgedoc-last-id"]; | ||||
|     let pad_content = hedgedoc.download(current_pad_id).expect("Hedgedoc: Download-Fehler"); | ||||
|     let toc = hedgedoc::summarize(pad_content.clone()); | ||||
|     let toc = hedgedoc.summarize(pad_content.clone()); | ||||
|     verboseln!("Zusammenfassung des aktuellen Plenum-Pads:\n{}", toc.cyan()); | ||||
|     let n_topics = toc.lines().count(); | ||||
|     verboseln!("(Also {}.)", topic_count(n_topics, false).cyan()); | ||||
|  | @ -436,7 +436,7 @@ fn do_protocol( | |||
|     nyi!("trace/verbose annotations"); | ||||
|     let (_current_pad_id, pad_content_without_cleanup, toc, n_topics) = | ||||
|         get_pad_info(config, hedgedoc); | ||||
|     let pad_content = hedgedoc::strip_metadata(pad_content_without_cleanup.clone()); | ||||
|     let pad_content = HedgeDoc::strip_metadata(pad_content_without_cleanup.clone()); | ||||
|     let ollama_enabled: bool = match &config["hedgedoc-ollama-summaries-enabled"] { | ||||
|         "True" => true, | ||||
|         "False" => false, | ||||
|  | @ -449,12 +449,7 @@ fn do_protocol( | |||
|         let ollama_port: &u16 = &config["hedgedoc-ollama-port"] | ||||
|             .parse::<u16>() | ||||
|             .expect("The ollama port wasn't given a valid u16 port, please check the config"); | ||||
|         match hedgedoc::summarize_with_ollama( | ||||
|             &pad_content, | ||||
|             &config["hedgedoc-ollama-pre-prompt"], | ||||
|             &config["hedgedoc-ollama-address"], | ||||
|             ollama_port, | ||||
|         ) { | ||||
|         match HedgeDoc::summarize_with_ollama(&pad_content, &config["hedgedoc-ollama-pre-prompt"], &config["hedgedoc-ollama-address"], ollama_port) { | ||||
|             Ok(ollama_summary) => ollama_summary, | ||||
|             Err(err) => { | ||||
|                 eprintln!("Ollama failed, continuing with standard toc. This was the error Message: {err}"); | ||||
|  | @ -482,7 +477,7 @@ fn do_protocol( | |||
|         ); | ||||
|         let _message_id = send_email(&subject, &body, email, config)?; | ||||
|         mediawiki::pad_ins_wiki(pad_content, wiki, plenum_day)?; | ||||
|         let new_id = hedgedoc::rotate(config, is_dry_run())?; | ||||
|         let new_id = HedgeDoc::rotate(config, is_dry_run())?; | ||||
|         println!("Generated new pad with id '{}'", new_id); | ||||
|         config.set("state-name", &ProgramState::Logged.to_string()).ok(); | ||||
|     } else { | ||||
|  |  | |||
|  | @ -15,5 +15,5 @@ git pull | |||
| sudo apt update | ||||
| sudo apt upgrade -y | ||||
| sudo apt install gcc libssl-dev pandoc pkg-config libsqlite3-dev | ||||
| cargo build --release | ||||
| cargo install --path . | ||||
| sudo ./update_or_create_systemd_service.sh | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 murmeldin
						murmeldin